[#24536] 「Rubyの落し方」 v.s. ruby_1_8 — akira yamada / やまだあきら <akira@...>

<URL:http://jp.rubyist.net/magazine/?0002-RubyCore>

40 messages 2004/10/20
[#24541] Re: 「Rubyの落し方」 v.s. ruby_1_8 — Yukihiro Matsumoto <matz@...> 2004/10/20

まつもと ゆきひろです

[#24599] 1.8.2 preview3? — akira yamada / やまだあきら <akira@...> 2004/10/26

2004-10-20 (水) の 21:38 +0900 に Yukihiro Matsumoto さんは書きました:

[#24605] Re: 1.8.2 preview3? — akira yamada / やまだあきら <akira@...> 2004/10/27

2004-10-26 (火) の 16:16 +0900 に akira yamada / やまだあきら さんは書きました:

[#24606] Re: 1.8.2 preview3? — Yukihiro Matsumoto <matz@...> 2004/10/27

まつもと ゆきひろです

[#24608] Re: 1.8.2 preview3? — akira yamada / やまだあきら <akira@...> 2004/10/27

2004-10-27 (水) の 11:48 +0900 に Yukihiro Matsumoto さんは書きました:

[#24620] Re: 1.8.2 preview3? — akira yamada / やまだあきら <akira@...> 2004/10/27

2004-10-27 (水) の 12:42 +0900 に akira yamada / やまだあきら さんは書きました:

[#24629] Re: 1.8.2 preview3? — Tanaka Akira <akr@...17n.org> 2004/10/29

In article <1098888819.9446.14.camel@rice.p.arika.org>,

[ruby-dev:24466] Re: DelegateClass(superclass)#clone

From: Yukihiro Matsumoto <matz@...>
Date: 2004-10-11 08:23:23 UTC
List: ruby-dev #24466
まつもと ゆきひろです

In message "Re: [ruby-dev:24465] Re: DelegateClass(superclass)#clone"
    on Mon, 11 Oct 2004 16:09:02 +0900, pegacorn@jcom.home.ne.jp writes:

|一応自分なりに delegate.rb を修正してみました。
|これで、先のテストケースはうまくいきます。

私は以下のようにしてみました。ただ、これだとdupとcloneをいち
いち再定義しなくてもよい代わりに、dupの場合でもclone同様フラ
グをコピーしちゃいますね。initialize_copyの設計に問題がある
ということでしょうか。

--- lib/delegate.rb	21 Sep 2004 03:08:31 -0000	1.19
+++ lib/delegate.rb	11 Oct 2004 08:22:27 -0000
@@ -77,2 +77,7 @@ class SimpleDelegator<Delegator
   end
+
+  def initialize_copy(obj)
+    super
+    __setobj__(obj.__getobj__.clone)
+  end
 end
@@ -104,2 +109,6 @@ def DelegateClass(superclass)
       @_dc_obj = obj
+    end
+    def initialize_copy(obj)
+      super
+    __setobj__(obj.__getobj__.clone)
     end

In This Thread