Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > delegateライブラリ > SimpleDelegatorクラス
class SimpleDelegator
クラスの継承リスト: SimpleDelegator < Delegator < Delegator::MethodDelegation < Object < Kernel < BasicObject
Abstract
Delegator クラスを継承し、シンプルなメソッド委譲を実現した具象クラス。
委譲先に指定されたオブジェクトへメソッドの実行を委譲します。
例:
require 'delegate' foo = Object.new def foo.test p 25 end foo2 = SimpleDelegator.new(foo) foo2.test # => 25
特異メソッド
new(obj) -> object
-
メソッドを委譲するオブジェクトの設定と、 メソッド委譲を行うためのクラスメソッドの定義を行います。
- [PARAM] obj:
- 委譲先のオブジェクト
[SEE_ALSO] Delegator.new
インスタンスメソッド
__getobj__ -> object
-
委譲先のオブジェクトを返します。
[SEE_ALSO] Delegator#__getobj__
__setobj__(obj) -> object
-
委譲先のオブジェクトを obj に変更します。
メソッド委譲を行うためのクラスメソッドの再定義は行われないことに注意してください。 メソッド委譲を行うためのクラスメソッドの定義は生成時にのみ行われます。 そのため、以前の委譲先オブジェクトと obj の間で呼び出せるメソッドに違いがあった場合は、 何かしらの可能性が発生する可能性があります。
- [PARAM] obj:
- 委譲先のオブジェクト
- [RETURN]
- 変更後の委譲先オブジェクト