From: matz@... (Yukihiro Matsumoto) Date: 1998-09-21T14:03:09+09:00 Subject: [ruby-list:9621] Re: can't clone Fixnum まつもと ゆきひろです In message "[ruby-list:9613] can't clone Fixnum" on 98/09/19, Kikutani Makoto writes: |前田さんのruby-jedパッチをJed 0.98.7+J0.5.3に無理やりあてて |makeしたんですが、ruby_shellモードが動きません。 |何かruby文を入れても「can't clone Fixnum」と言われてます。 | |ソースではこのメッセージを出しているところがみつからないので |rubyのほうが出しているのかな? 出しているのはRubyです.cloneというメソッドはObjectに定義さ れているのですが,cloneという操作は実は全部のオブジェクトに 定義されているわけではありません. 現在のcloneのデフォルトの定義はFixnumのようにcloneという操作 が定義できないものに対しては例外を発生させます(「1」のコピーっ てなに?).これについては * clone操作が定義できない場合はcloneせずにそのものを返す とか, * とりあえずFixnumについてはcloneとはそのものを返すことで あると定義する とかのRuby側の対処法が考えられますし,ruby_shell側で無闇に cloneを行わないという選択肢もありえます. まつもと ゆきひろ /:|)