るりまサーチ

最速Rubyリファレンスマニュアル検索!
48件ヒット [1-48件を表示] (0.172秒)
トップページ > 種類:インスタンスメソッド[x] > クエリ:e[x] > クエリ:basic[x] > クラス:BasicObject[x] > クエリ:instance_eval[x]

別のキーワード

  1. readline basic_quote_characters
  2. readline basic_quote_characters=
  3. readline basic_word_break_characters
  4. readline basic_word_break_characters=
  5. net/http basic_auth

ライブラリ

キーワード

検索結果

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

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

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

オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行...
...ということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。

ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロック...
... instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_eval 内のメソッドが定義されます。これはメソッド定義のネストと同じです。
d:spec/def#nest_method を参照してください。

BasicObject
...

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

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

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

オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行...
...ということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。

ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロック...
... instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_eval 内のメソッドが定義されます。これはメソッド定義のネストと同じです。
d:spec/def#nest_method を参照してください。

BasicObject
...

BasicObject#singleton_method_undefined(name) -> object (12208.0)

特異メソッドが Module#undef_method または undef により未定義にされた時にインタプリタから呼び出されます。

...特異メソッドが Module#undef_method または
undef により未定義にされた時にインタプリタから呼び出されます。

通常のメソッドの未定義に対するフックには
Module#method_undefined を使います。

@param name 未定義にされたメソッド名...
.../emlist[例][ruby]{
class Foo
def singleton_method_undefined(name)
puts "singleton method \"#{name}\" was undefined"
e
nd
e
nd

obj = Foo.new
def obj.foo
e
nd
def obj.bar
e
nd

class << obj
undef_method :foo
e
nd
obj.instance_eval {undef bar}

#=> singleton method "foo" was undefined
# single...
...ton method "bar" was undefined
//}

@see Module#method_undefined,BasicObject#singleton_method_added,BasicObject#singleton_method_removed , d:spec/def#undef...

BasicObject#instance_exec(*args) {|*vars| ... } -> object (12108.0)

与えられたブロックをレシーバのコンテキストで実行します。

...self がレシーバのコンテキストになるので
レシーバの持つインスタンス変数にアクセスすることができます。

@param args ブロックパラメータに渡す値です。

//emlist[例][ruby]{
class KlassWithSecret
def initialize
@secret = 99
e
nd
e
nd
k...
...= KlassWithSecret.new
# 以下で x には 5 が渡される
k.instance_exec(5) {|x| @secret + x } #=> 104
//}

@see Module#class_exec, Module#module_exec, BasicObject#instance_eval...