Ruby 4.1 リファレンスマニュアル

instance method Forwardable#delegate

instance_delegate(hash) -> ()Ruby 1.9.3 から[permalink][rdoc][edit]
delegate(hash) -> ()

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

[PARAM] hash:
委譲先のメソッドがキー、委譲先のオブジェクトが値の Hash を指定します。キーは SymbolString かその配列で指定します。
require 'forwardable'

class Zap
    extend Forwardable
    delegate :length => :@str
    delegate [:first, :last] => :@arr
    def initialize
      @arr = %w/foo bar baz/
      @str = "world"
    end
end

zap = Zap.new
p zap.length # => 5
p zap.first  # => "foo"
p zap.last # => "baz"