From: matz@... (Yukihiro Matsumoto) Date: 1997-07-28T23:53:54+09:00 Subject: [ruby-list:3523] Re: meta programming features まつもと ゆきひろです In message "[ruby-list:3517] Re: meta programming features" on 97/07/28, 石塚圭樹 writes: | |けいじゅ@今はフリー(^^;;;です. | |これは, ruby-devに引っ越します. 行きなり引っ越すのも何なので ruby-list |にもCcしておきます. 次回リプライを下さる人は, Cc削って下さい(__ | |# ruby-dev1号になるかな?? すいません.うまくいってないようです. こんどはどうでしょう(CCした). |気がつきませんでしたが, 確かに evalと同じですね. ただ, メソッド定義の |場合は, 普通のevalと違って, eval内で変数を渡す必要はほとんどないと思う |のでこのままでも簡単に実現可能だと思うのですが, 定数の場合はそうは行き |ませんよね. | | Bar = "Hogehoge" | eval "Foo = Bar", Foo.class_binding | |みたいなことはできないですしね. Module#eval(仮名)ではselfとthe_class(メソッドと定数の定義先) だけを置き換えてevalするようにすれば,ローカル変数を経由して 値を渡せると思います.どうでしょう. bar = Bar FooClass.eval "Foo = bar" |じゃあ. 今な感じでaliasを採用するのはどうですかね? ケアレスミスは避け |ることができるようになると思いますし... その線でいきましょう. まつもと ゆきひろ /:|)