るりまサーチ

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

別のキーワード

  1. objectspace each_object
  2. _builtin each_object
  3. object enum_for
  4. object public_send
  5. object to_enum

ライブラリ

クラス

キーワード

検索結果

SimpleDelegator (38012.0)

Delegator クラスを継承し、シンプルなメソッド委譲を実現した具象クラス。

...し、シンプルなメソッド委譲を実現した具象クラス。

委譲先に指定されたオブジェクトへメソッドの実行を委譲します。

例:

//emlist{
require 'delegate'

foo = Object.new
def foo.test
p 25
end
foo2 = SimpleDelegator.new(foo)
foo2.test # => 25
//}...

SimpleDelegator#__getobj__ -> object (21101.0)

委譲先のオブジェクトを返します。

委譲先のオブジェクトを返します。

@see Delegator#__getobj__

SimpleDelegator#__setobj__(obj) -> object (21101.0)

委譲先のオブジェクトを obj に変更します。

委譲先のオブジェクトを obj に変更します。

メソッド委譲を行うためのクラスメソッドの再定義は行われないことに注意してください。
メソッド委譲を行うためのクラスメソッドの定義は生成時にのみ行われます。
そのため、以前の委譲先オブジェクトと
obj の間で呼び出せるメソッドに違いがあった場合は、
何かしらの例外が発生する可能性があります。

@param obj 委譲先のオブジェクト

@return 変更後の委譲先オブジェクト

SimpleDelegator.new(obj) -> object (21101.0)

メソッドを委譲するオブジェクトの設定と、 メソッド委譲を行うためのクラスメソッドの定義を行います。

メソッドを委譲するオブジェクトの設定と、
メソッド委譲を行うためのクラスメソッドの定義を行います。

@param obj 委譲先のオブジェクト

@see Delegator.new

ruby 1.8.3 feature (18.0)

ruby 1.8.3 feature *((<ruby 1.8 feature>)) *((<ruby 1.8.2 feature>))

...y-talk:146894>))
$ cat test_dlg.rb
foo = Object.new
foo2 = SimpleDelegator.new(foo)
def foo.bar
puts "bar"
end
foo2.bar

$ ruby-1.8.2 -r delegate test_dlg.rb
test_dlg.rb:6: undefined method `bar' for #<Object:0x4021b0a0> (NoMethodError)

$ ruby-1....

絞り込み条件を変える