From: Koji Arai Date: 2003-04-24T23:26:56+09:00 Subject: [ruby-list:37615] Re: 1.8.0 to_ary 新井です。 In message "[ruby-list:37614] Re: 1.8.0 to_ary" on 24 Apr 2003 17:09:13 +0900, matz@ruby-lang.org (Yukihiro Matsumoto) wrote: > まつもと ゆきひろです > |また、以下(メソッドの引数がちょっと変わる)が、違う挙動なのは > |なんでしょう? > | > | class Bar > | def to_a > | [1,2,3] > | end > | end > | p(1,*Bar.new) > | => -:6: failed to convert Bar into Array (TypeError) > | ruby 1.6.8 (2002-12-24) [i586-linux] > | => -:6: cannot convert Bar into Array (TypeError) > | ruby 1.8.0 (2003-04-11) [i586-linux] > > 「挙動が違う」と言うのはメッセージが違うと言う意味ですか? これは、1.6、1.8 ともに class Bar end p(*Bar.new) # (A) p(1,*Bar.new) # (B) => ruby 1.6.8 (2002-12-24) [i586-linux] # -:4: failed to convert Bar into Array (TypeError) => ruby 1.8.0 (2003-04-11) [i586-linux] # -:4: cannot convert Bar into Array (TypeError) と、引数が * のみの場合と複数の引数の場合で「挙動が違う」と いうことを言いたかったのでした。(B)は、 1 # とはならない(あるいは(A)はエラーにならない)なっと。 -- 新井康司 (Koji Arai)