Sha256: f95c074ee4185d2190442e9e08258002be44e8a3ded7621b42b4a76a1d60fef1
Contents?: true
Size: 681 Bytes
Versions: 17
Compression:
Stored size: 681 Bytes
Contents
class Delegator < BasicObject def initialize(obj) __setobj__(obj) end def method_missing(m, *args, &block) target = __getobj__ if target.respond_to?(m) target.__send__(m, *args, &block) else super(m, *args, &block) end end # # Checks for a method provided by this the delegate object by forwarding the # call through \_\_getobj\_\_. # def respond_to_missing?(m, include_private) __getobj__.respond_to?(m, include_private) end end class SimpleDelegator < Delegator def __getobj__ @delegate_sd_obj end def __setobj__(obj) @delegate_sd_obj = obj end end def DelegateClass(superklass) SimpleDelegator end
Version data entries
17 entries across 17 versions & 1 rubygems