るりまサーチ

最速Rubyリファレンスマニュアル検索!
108件ヒット [1-100件を表示] (0.085秒)
トップページ > クエリ:Ruby[x] > クエリ:ruby[x] > 種類:インスタンスメソッド[x] > クエリ:-[x] > クエリ:b[x] > クエリ:end[x] > クエリ:module_eval[x]

別のキーワード

  1. fiddle ruby_free
  2. rbconfig ruby
  3. fiddle build_ruby_platform
  4. rubygems/defaults ruby_engine
  5. rake ruby

ライブラリ

クラス

キーワード

検索結果

<< 1 2 > >>

Module#module_eval {|mod| ... } -> object (15357.0)

モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。

...とです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。

ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。

定数とクラス変数のスコープは、文字列が与えられた場合とブ...
...きます。

//emlist[例][ruby]{
class C
end

a = 1
C.class_eval %Q{
def m # メソッドを動的に定義できる。
return :m, #{a}
end

}

p C.new.m #=> [:m, 1]
//}

//emlist[定数のスコープが異なる例][ruby]{
class C
end


# ブロックが渡された...
...列が渡された場合は、モジュール定義式内と同じスコープになる。つまり、この場合は
# class C
# X = 2
# end
# と書いたのと同じ意味になる。
C.class_eval 'X = 2'

p X #=> 1
p C::X #=> 2
//}

@see BasicObject#instance_eval, Module.new, Kernel.#eval...

Module#module_eval(expr, fname = "(eval)", lineno = 1) -> object (15357.0)

モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。

...とです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。

ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。

定数とクラス変数のスコープは、文字列が与えられた場合とブ...
...きます。

//emlist[例][ruby]{
class C
end

a = 1
C.class_eval %Q{
def m # メソッドを動的に定義できる。
return :m, #{a}
end

}

p C.new.m #=> [:m, 1]
//}

//emlist[定数のスコープが異なる例][ruby]{
class C
end


# ブロックが渡された...
...列が渡された場合は、モジュール定義式内と同じスコープになる。つまり、この場合は
# class C
# X = 2
# end
# と書いたのと同じ意味になる。
C.class_eval 'X = 2'

p X #=> 1
p C::X #=> 2
//}

@see BasicObject#instance_eval, Module.new, Kernel.#eval...

BasicObject#instance_eval {|obj| ... } -> object (3367.0)

オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。

...を参照してください。

B
asicObject を継承して作ったクラス内で instance_eval する場合はトップレベルの定数や Kernel モジュールに定義されているメソッドは見えません。
これは、トップレベルの定数が Object 以下に作成される...
...タックトレースの表示などを差し替えることができます。

//emlist[例][ruby]{
class Foo
def initialize data
@key = data
end

private
def do_fuga
p 'secret'
end

end


some = Foo.new 'XXX'
some.instance_eval{p @key} #=> "XXX"
some.instance_eval{do_fuga } #=> "sec...
...le.rb',999 # file.rb:999: unknown (RuntimeError)
//}

//emlist[例][ruby]{
class Bar < BasicObject
def call1
instance_eval("::ENV.class")
end

def call2
instance_eval("ENV.class")
end

end


b
ar = Bar.new
b
ar.call1 # => Object
b
ar.call2 # raise NameError
//}

@see Module#module_eval, Ke...

BasicObject#instance_eval(expr, filename = "(eval)", lineno = 1) -> object (3267.0)

オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。

...を参照してください。

B
asicObject を継承して作ったクラス内で instance_eval する場合はトップレベルの定数や Kernel モジュールに定義されているメソッドは見えません。
これは、トップレベルの定数が Object 以下に作成される...
...タックトレースの表示などを差し替えることができます。

//emlist[例][ruby]{
class Foo
def initialize data
@key = data
end

private
def do_fuga
p 'secret'
end

end


some = Foo.new 'XXX'
some.instance_eval{p @key} #=> "XXX"
some.instance_eval{do_fuga } #=> "sec...
...le.rb',999 # file.rb:999: unknown (RuntimeError)
//}

//emlist[例][ruby]{
class Bar < BasicObject
def call1
instance_eval("::ENV.class")
end

def call2
instance_eval("ENV.class")
end

end


b
ar = Bar.new
b
ar.call1 # => Object
b
ar.call2 # raise NameError
//}

@see Module#module_eval, Ke...

WIN32OLE_TYPE#default_event_sources -> [WIN32OLE_TYPE] (527.0)

型が持つソースインターフェイスを取得します。

...です。ソースインターフェイスを持
たない場合は空配列を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
tobj.default_event_sources.map {|intf| intf.name} #=> ["DocEvents"]

WIN32OLE_EVENT.newでインターフェイ...
...class WebEvent
def initialize
@completed = false
end

attr_reader :completed
end

source.ole_methods.each do |m|
WebEvent.module_eval do
define_method("on#{m.name}") do |*arg|
if arg[0] == "ページが表示されました"
@completed = true
end
...
..."#{Time.now}: #{m.name} was called"
p arg
end

end

end

evt = WIN32OLE_EVENT.new(ctl)
evt.handler = WebEvent.new
ctl.navigate2 'http://www.ruby-lang.org/'
loop do
b
reak if evt.handler.completed
WIN32OLE_EVENT.message_loop
end

ctl.Quit

このプログラムを実行する...

絞り込み条件を変える

Module#class_eval {|mod| ... } -> object (257.0)

モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。

...とです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。

ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。

定数とクラス変数のスコープは、文字列が与えられた場合とブ...
...きます。

//emlist[例][ruby]{
class C
end

a = 1
C.class_eval %Q{
def m # メソッドを動的に定義できる。
return :m, #{a}
end

}

p C.new.m #=> [:m, 1]
//}

//emlist[定数のスコープが異なる例][ruby]{
class C
end


# ブロックが渡された...
...列が渡された場合は、モジュール定義式内と同じスコープになる。つまり、この場合は
# class C
# X = 2
# end
# と書いたのと同じ意味になる。
C.class_eval 'X = 2'

p X #=> 1
p C::X #=> 2
//}

@see BasicObject#instance_eval, Module.new, Kernel.#eval...

Module#class_eval(expr, fname = "(eval)", lineno = 1) -> object (257.0)

モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。

...とです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。

ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。

定数とクラス変数のスコープは、文字列が与えられた場合とブ...
...きます。

//emlist[例][ruby]{
class C
end

a = 1
C.class_eval %Q{
def m # メソッドを動的に定義できる。
return :m, #{a}
end

}

p C.new.m #=> [:m, 1]
//}

//emlist[定数のスコープが異なる例][ruby]{
class C
end


# ブロックが渡された...
...列が渡された場合は、モジュール定義式内と同じスコープになる。つまり、この場合は
# class C
# X = 2
# end
# と書いたのと同じ意味になる。
C.class_eval 'X = 2'

p X #=> 1
p C::X #=> 2
//}

@see BasicObject#instance_eval, Module.new, Kernel.#eval...

Module#class_exec(*args) {|*vars| ... } -> object (237.0)

与えられたブロックを指定された args を引数としてモジュールのコンテキストで評価します。

...に渡す引数を指定します。


//emlist[例][ruby]{
class Thing
end

c = 1

Thing.class_exec{
def hello()
"Hello there!"
end


define_method(:foo) do # ローカル変数がブロックの外側を参照している
c
end

}

t = Thing.new
p t.hello() #=> "Hello t...
...here!"
p t.foo() #=> 1
//}

@see Module#module_eval, Module#class_eval...

Module#module_exec(*args) {|*vars| ... } -> object (237.0)

与えられたブロックを指定された args を引数としてモジュールのコンテキストで評価します。

...に渡す引数を指定します。


//emlist[例][ruby]{
class Thing
end

c = 1

Thing.class_exec{
def hello()
"Hello there!"
end


define_method(:foo) do # ローカル変数がブロックの外側を参照している
c
end

}

t = Thing.new
p t.hello() #=> "Hello t...
...here!"
p t.foo() #=> 1
//}

@see Module#module_eval, Module#class_eval...
<< 1 2 > >>