From: keiju@... (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?=) Date: 1999-06-01T17:26:40+09:00 Subject: [ruby-dev:7055] Re: [BUG] [Re: Local variable in for block] けいじゅ@日本ラショナルソフトウェアです. In [ruby-dev :7050 ] the message: "[ruby-dev:7050] Re: [BUG] [Re: Local variable in for block] ", on Jun/01 16:36(JST) Yukihiro Matsumoto writes: >まつもと ゆきひろです >||1. mainオブジェクトがself >||2. ローカル変数はトップレベルとは共有しない >| >|うーむ,これは? >| >| require 'tempfile' >| >| def toplevel_binding >| f = Tempfile.new("irb") >| f.print<| $binding = binding >| EOF >| f.close >| $binding >| end >| >|loadの中ではローカルスコープが独立しているのを使った裏技です. これはちょっと... >こういうのもありかも > > def self.temp_binding > binding > end > binding = temp_binding おお. 気が付かなかった(^^;;; というか, 関数内ではクラス定義とかメソッド定義できないので, このバインディ ングはだめだと思っていたんですが... でも, よく考えたらそういうもんじゃなかったですね(^^;;;; >||ってなるんですが, これって変ですよね? >|たしかにちょっと変ですねえ.見てみます. > >バグでした.修正しました. やはり, Rubyのバグ出しのために今のままにしておくべきか(^^;;; __ ..............................石塚 圭樹@日本ラショナルソフトウェア... ----------------------------------->> e-mail: keiju@rational.com <<---