From: nobu.nakada@... Date: 2001-12-08T00:10:23+09:00 Subject: [ruby-dev:15394] Data.new and Data.allocate with allocation framework なかだです。 1.7のallocation framework関連の話です。 今Data.newがundefされてますが、むしろこれは残してData.allocate をundefしたほうがいいんじゃないでしょうか。結局Data.newが失敗す ることは同じですが、Data.allocateがundefされていないと実際には initializeされていない状態のDataのインスタンスが作れてしまいま す。 またData.newを残しておけば、拡張ライブラリを作るときにいちいち rb_obj_alloc()とrb_obj_call_init()を呼ぶ関数を作る必要はなくな ります。Class.allocateが分離されたことで、個別のクラスに特化し た処理はClass.newからなくなったと考えていいと思うのですが。 Index: object.c =================================================================== RCS file: /cvs/ruby/src/ruby/object.c,v retrieving revision 1.62 diff -u -2 -p -r1.62 object.c --- object.c 2001/11/29 15:57:25 1.62 +++ object.c 2001/12/07 15:03:58 @@ -1293,5 +1293,5 @@ Init_Object() rb_cData = rb_define_class("Data", rb_cObject); - rb_undef_method(CLASS_OF(rb_cData), "new"); + rb_undef_method(CLASS_OF(rb_cData), "allocate"); ruby_top_self = rb_obj_alloc(rb_cObject); -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦