るりまサーチ

最速Rubyリファレンスマニュアル検索!
132件ヒット [1-100件を表示] (0.046秒)
トップページ > クエリ:method[x] > クエリ:BasicObject[x] > クエリ:instance_eval[x]

別のキーワード

  1. basicobject instance_eval
  2. basicobject __send__
  3. _builtin basicobject
  4. basicobject instance_exec
  5. basicobject equal?

ライブラリ

クラス

モジュール

オブジェクト

検索結果

<< 1 2 > >>

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

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

... instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。

メソッド定義の中で instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_eval...
...が定義されます。これはメソッド定義のネストと同じです。
d:spec/def#nest_method を参照してください。

BasicObject
を継承して作ったクラス内で instance_eval する場合はトップレベルの定数や Kernel モジュールに定義されているメ...
...cret'
end
end

some = Foo.new 'XXX'
some.instance_eval{p @key} #=> "XXX"
some.instance_eval{do_fuga } #=> "secret" # private メソッドも呼び出せる

some.instance_eval 'raise' # ..:10: (eval):1: (RuntimeError)
messg = 'unknown'
some.instance_eval 'raise messg','file.rb',999 # file.rb:999:...

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

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

... instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。

メソッド定義の中で instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_eval...
...が定義されます。これはメソッド定義のネストと同じです。
d:spec/def#nest_method を参照してください。

BasicObject
を継承して作ったクラス内で instance_eval する場合はトップレベルの定数や Kernel モジュールに定義されているメ...
...cret'
end
end

some = Foo.new 'XXX'
some.instance_eval{p @key} #=> "XXX"
some.instance_eval{do_fuga } #=> "secret" # private メソッドも呼び出せる

some.instance_eval 'raise' # ..:10: (eval):1: (RuntimeError)
messg = 'unknown'
some.instance_eval 'raise messg','file.rb',999 # file.rb:999:...

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

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

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

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

@param name 未定義にされたメソッド名...
...o
def singleton_method_undefined(name)
puts "singleton method \"#{name}\" was undefined"
end
end

obj = Foo.new
def obj.foo
end
def obj.bar
end

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

#=> singleton method "foo" was undefined
# singleton method "bar" was undefin...
...ed
//}

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

Module#define_method(name, method) -> Symbol (6245.0)

インスタンスメソッド name を定義します。

...ックが
レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。

@param name メソッド名を String または Symbol を指定します。

@param method Proc、Method あるいは UnboundMethod
いずれかのインスタンスを指定します...
...します。

@raise TypeError method に同じクラス、サブクラス、モジュール以外のメソッ
ドを指定した場合に発生します。

//emlist[例][ruby]{
class Foo
def foo() p :foo end
define_method(:bar, instance_method(:foo))
end
Foo.new.bar # => :f...

main.define_method(name, method) -> Symbol (6239.0)

インスタンスメソッド name を Object に定義します。

...ッドの実行時にブロックが
Object インスタンスの上で BasicObject#instance_eval されます。

@param name String または Symbol を指定します。

@param method Proc、Method あるいは UnboundMethod
いずれかのインスタンスを指定します...
...

@return メソッド名を表す Symbol を返します。

@raise TypeError method に同じクラス、サブクラス以外のメソッドを指定し
た場合に発生します。


@see Module#define_method...

絞り込み条件を変える

Module#define_method(name) { ... } -> Symbol (6145.0)

インスタンスメソッド name を定義します。

...ックが
レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。

@param name メソッド名を String または Symbol を指定します。

@param method Proc、Method あるいは UnboundMethod
いずれかのインスタンスを指定します...
...します。

@raise TypeError method に同じクラス、サブクラス、モジュール以外のメソッ
ドを指定した場合に発生します。

//emlist[例][ruby]{
class Foo
def foo() p :foo end
define_method(:bar, instance_method(:foo))
end
Foo.new.bar # => :f...

main.define_method(name) { ... } -> Symbol (6139.0)

インスタンスメソッド name を Object に定義します。

...ッドの実行時にブロックが
Object インスタンスの上で BasicObject#instance_eval されます。

@param name String または Symbol を指定します。

@param method Proc、Method あるいは UnboundMethod
いずれかのインスタンスを指定します...
...

@return メソッド名を表す Symbol を返します。

@raise TypeError method に同じクラス、サブクラス以外のメソッドを指定し
た場合に発生します。


@see Module#define_method...

ruby 1.9 feature (72.0)

ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。

...: Hash#identical?

=== 2006-08-31

: Array#shuffle
: Array#shuffle!

追加

=== 2006-07-26

: __send
: __send!

追加

: invoke_method
: invoke_functional_method

削除

=== 2006-07-21

: Module#attr

オプショナル引数の assignable がなくなり、attr_reader 相当になりま...
...]

=== 2006-06-17

: BasicObject#invoke_method
: BasicObject#invoke_functional_method

追加
((<ruby-talk:197512>))

=== 2006-06-13

: IPsocket
: TCPsocket
: SOCKSsocket
: TCPserver
: UDPsocket
: UNIXsocket
: UNIXserver

削除

=== 2006-06-11

: __callee__ [new]
: __method__ [new]

((<URL:...
...46>))

=== 2006-03-03

: FileUtils.cp_r [lib] [compat]

remove_destination オプションの追加
((<ruby-dev:28417>))

=== 2006-02-15

: instance_eval

((<ruby-core:7365>))

=== 2006-02-03

: Integer#upto [compat]
: Integer#downto [compat]
: Integer#doitems [compat]

ブロックがな...

Ruby プログラムの実行 (48.0)

Ruby プログラムの実行 === Ruby プログラム

...=== メソッド定義式

メソッドを定義します。
評価は(コンパイル時ではなく)実行時に行われます。

書式

def method_name(arg, argwithdefault=expr, *restarg, &block)
本体
end

評価すると、実行中のブロックの class にメソッド本体を...
...承します。Module#module_eval/class_eval、
BasicObject
#instance_eval
の三つだけが例外で、以下のように変更されます。

: Module#module_eval, Module#class_eval
self、class ともそのレシーバ
: BasicObject#instance_eval
self がそのレシーバ、class がそ...
...上にないなら例外 LocalJumpError
を発生します。

next ブロックの終わりまでジャンプ

retry 複雑だ…

==== eval, instance_eval, module_eval

これなんだっけ

=== 代入

代入とは、変数・定数のいずれかにオブジェクトを記憶させることを...
<< 1 2 > >>