diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-03-31 02:52:44 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-03-31 02:52:44 +0000 |
commit | fbbdeb9b577159d2481689d538d9b2437c04f220 (patch) | |
tree | 1f655b2cd53dab8c5129e069dfe60ce641713692 /lib/delegate.rb | |
parent | bbf04edb3821897a843406dff552b7643d5a3218 (diff) |
* lib/delegate.rb (DelegateClass): define internal methods of the
result class, but not metaclass of the caller.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/delegate.rb')
-rw-r--r-- | lib/delegate.rb | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/delegate.rb b/lib/delegate.rb index 0069109624..3bbd148e74 100644 --- a/lib/delegate.rb +++ b/lib/delegate.rb @@ -91,6 +91,9 @@ def DelegateClass(superclass) def initialize(obj) @_dc_obj = obj end + def __getobj__ + @_dc_obj + end EOS for method in methods begin @@ -108,10 +111,7 @@ def DelegateClass(superclass) raise NameError, "invalid identifier %s" % method, caller(3) end end - def __getobj__ - @_dc_obj - end - return klass; + return klass end if __FILE__ == $0 |