module DelegateIt
encoding: UTF-8
Constants
- VERSION
Public Instance Methods
delegate(*methods, options)
click to toggle source
# File lib/delegate_it/main.rb, line 3 def delegate *methods, options methods.each do |method| method_name = if options[:prefix] && options[:prefix].is_a?(Symbol) "#{options[:prefix]}_#{method}" elsif options[:prefix] "#{options[:to]}_#{method}" else method end define_method method_name do |*args| receiver = self.send(options[:to]) if options[:allow_nil] && !receiver nil else receiver.send(method, *args) end end end end