From: nobu.nakada@... Date: 2000-02-18T18:57:22+09:00 Subject: [ruby-list:20837] Re: ANN: ActiveScriptRuby なかだです。 はずしてたらごめんなさい。 At Fri, 18 Feb 2000 17:34:35 +0900, arton wrote: > すなわち2枚以上のウィンドウが存在して、かつ > foo1.htmlとfoo2.htmlのそれぞれに、 > > > と書いた場合、fooclickというメソッドが、当然Rubyの中で後勝ちになって > しまうことです。(内容が同じなら構わないけど、たいてい、異なること > を行なうはずです) 仮に、htmlが異なれば異なる名前を付けろ > と制限しても、新しいウィンドウに同じHTMLという状況だと、同様な > 状態になりますし、それに余り嬉しい制限じゃないので、避けたいです。 > > というわけで、メソッド名の重複の解消となると、単純なブリッジ機能だけ > ではすまなくなってきて、実装方法に悩んでいます。 > 今、考えているのはRubyのスレッド切り替えの部分を参照して、 > 名前テーブルをActiveScriptEngineのコンテキスト切り替えに合わせて > 入れ替えることですが、もっとうまい方法があったら、教えて頂ける > と嬉しいのですが。 Module.new と Kernel#instance_eval、Module#module_eval の組合せとかで なんとかならないでしょうか。 script_a = Module.new script_a.instance_eval "def foo; 1; end" script_b = Module.new script_b.instance_eval "def foo; 2; end" script_a.module_eval "p foo" # => 1 script_b.module_eval "p foo" # => 2 こういう話では、ない? -- そうだ 強気に ちょっと インチキに☆彡 中田 "Bugるくらいがちょうどいいかも;-)" 伸悦