RosettaCodeData/Task/Delegates/Ruby/delegates-2.rb

20 lines
300 B
Ruby

require 'forwardable'
class Delegator; extend Forwardable
attr_accessor :delegate
def_delegator :@delegate, :thing, :delegated
def initialize
@delegate = Delegate.new()
end
end
class Delegate
def thing
'Delegate'
end
end
a = Delegator.new
puts a.delegated # prints "Delegate"