Method: SingleForwardable#single_delegate

Defined in:
lib/forwardable.rb

#single_delegate(hash) ⇒ Object Also known as: delegate

Takes a hash as its argument. The key is a symbol or an array of symbols. These symbols correspond to method names. The value is the accessor to which the methods will be delegated.

:call-seq:

delegate method => accessor
delegate [method, method, ...] => accessor


243
244
245
246
247
248
249
250
# File 'lib/forwardable.rb', line 243

def single_delegate(hash)
  hash.each{ |methods, accessor|
    methods = [methods] unless methods.respond_to?(:each)
    methods.each{ |method|
      def_single_delegator(accessor, method)
    }
  }
end