Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > forwardableライブラリ > Forwardableモジュール

module Forwardable

クラスの継承リスト: Forwardable

要約

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

使い方

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

例:

require 'forwardable'
class Foo
  extend Forwardable

  def_delegators("@out", "printf", "print")
  def_delegators(:@in, :gets)
  def_delegator(:@contents, :[], "content_at")
end
f = Foo.new
f.printf ...
f.gets
f.content_at(1)

特異メソッド

定義 説明
debug -> bool

委譲部分をバックトレースに含めるかどうかの状態を返します。

debug= -> bool

委譲部分をバックトレースに含めるかどうかの状態を設定します。

インスタンスメソッド

定義 説明
def_instance_delegator(accessor, method, ali = method) -> ()
def_delegator(accessor, method, ali = method) -> ()

メソッドの委譲先を設定します。

def_instance_delegators(accessor, *methods) -> ()
def_delegators(accessor, *methods) -> ()

メソッドの委譲先をまとめて設定します。

instance_delegate(hash) -> ()
delegate(hash) -> ()

メソッドの委譲先を設定します。

定数

定義 説明
FORWARDABLE_VERSION -> "1.1.0"

forwardable ライブラリのバージョンを返します。