From: keiju@... (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?=) Date: 2009-11-28T22:46:58+09:00 Subject: [ruby-dev:39809] Re: バグ? ブロック引数で to_ary が呼ばれる必要のない場面で呼ばれる けいじゅ@いしつかです. In [ruby-dev:39807] the message: "[ruby-dev:39807] Re: バグ? ブロック 引数で to_ary が呼ばれる必要のない場面で呼ばれる", on Nov/28 16:14(JST) Yukihiro Matsumoto writes: >まつもと ゆきひろです >name属性がセットされてないからですね。 > raise NoMethodError.new(message, :to_ary) >としてください。 なるほど. method_missingの場合もそれでよいわけですね? >|で, delegator.rb のなかを見ると: >| target = self.__getobj__ >| unless target.respond_to?(m) >| super(m, *args, &block) >| else >| target.__send__(m, *args, &block) >| end >|となっていて, respond_to? がありますが, なぜこんなことやっているのでしょ >|う? これがらみ? > >そうです。 うーん. なるほど. とはいえ, DeepConnectでこれをやるわけにもいかないで すが... ところで, to_ary が呼ばれるのは, ブロックの仮引数にオプショナルな引数 があるときだけですか? メソッドの場合にも呼ばれたりすることあります? __ ---------------------------------------------------->> 石塚 圭樹 <<--- ---------------------------------->> e-mail: keiju@ishitsuka.com <<---