るりまサーチ (Ruby 2.6.0)

最速Rubyリファレンスマニュアル検索!
2件ヒット [1-2件を表示] (0.007秒)

キーワード

検索結果

Forwardable (10.0)

クラスに対し、メソッドの委譲機能を定義するモジュールです。

...ルです。

=== 使い方

クラスに対して Object#extend して使います。Module#include でないところに注意して下さい。

例:

require 'forwardable'
class Foo
extend Forwardable

def_delegators("@out", "printf", "print")
def_delegators(:@in, :gets)...

SingleForwardable (10.0)

オブジェクトに対し、メソッドの委譲機能を定義するモジュールです。

...ます。

例:

require 'forwardable'
g = Goo.new
g.extend SingleForwardable
g.def_delegator("@out", :puts)
g.puts ...

また、SingleForwardable はクラスやモジュールに対して以下のようにする事もできます。

require 'forwardable'
class Implementation
de...
...f self.service
puts "serviced!"
end
end

module
Facade
extend SingleForwardable
def_delegator :Implementation, :service
end

Facade.service # => serviced!

もし Forwardable と SingleForwardable の両方を使いたい場合、
def_instance_delegator と def_single_del...