Sha256: e05671af9b278b4c6c275f5f3b962c97252eff8490f5543c999ee4be99273499
Contents?: true
Size: 1.01 KB
Versions: 3
Compression:
Stored size: 1.01 KB
Contents
require 'delegate' module DelegateSpecs class Simple def pub :foo end def respond_to_missing?(method, priv=false) method == :pub_too || (priv && method == :priv_too) end def method_missing(method, *args) super unless respond_to_missing?(method, true) method end def priv(arg=nil) yield arg if block_given? [:priv, arg] end private :priv def prot :protected end protected :prot end module Extra def extra :cheese end def extra_private :bar end private :extra_private def extra_protected :baz end protected :extra_protected end class Delegator < ::Delegator attr_accessor :data attr_reader :__getobj__ def __setobj__(o) @__getobj__ = o end # Needed for 1.8.x compatibility def initialize(obj) super __setobj__(obj) end include Extra end class DelegateClass < DelegateClass(Simple) include Extra end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rubysl-delegate-2.0.1 | spec/fixtures/classes.rb |
rubysl-delegate-1.0.0 | spec/fixtures/classes.rb |
rubysl-delegate-2.0.0 | spec/fixtures/classes.rb |