民斗です。

[Subject: [ruby-ext:00011] Re: メソッド関数内からメソッド名を得る方法]
[Date: Thu, 3 Dec 1998 23:43:38 +0900  From:Yukihiro Matsumoto]

> |が、全く同じ処理ではないので、どのメソッドによって呼び出されたのかを 
> |C 関数中で判断して、処理を変えたいのですが、このようなことは可能でしょ
> |うか?

> で,関数を一段噛ましてフラグをたてるという方法は使いたくない
> んですか? どうしてもそういうことがしたいっていうなら 
> rb_frame_last_func() って関数がありますけど,将来のバージョ
> ン(2.0とか)でなくなるかもしれませんよ.

実は今 Motif モジュールを作っています。

# はじめは xtoolkit を使ってたんですけど、私にはかなり機能不足
# だったんで最初から作り始めてしまいました (^^;

で、ウィジェットのリソースを参照や更新するのに、
	foo = object.resource_name	# 参照
	object.resource_name = foo	# 更新
としたいのですが、そうするとリソースの数 x2 だけ関数を作る必要が
でてくるので、どうにかならんかな〜と思ったんです。

まあこれだけなら、あきらめて関数を作ればいいんですけど、アプリケー
ション定義リソースなんかも実装しようと思ってしまったのです。

例えば、Ruby 中で
	motif_obj.getApplicationResources(["res1","res2","res3"])
とすると、普通のリソースと同じように
	motif_obj.res1 = hoge
	fuga = motif_obj.res2
とかできればいいかなと思うんですが、そうすると getApplicationResources
メソッド中で "res1" や "res1=" とかのメソッドを定義しないといけなくて、
どうしたものかと…。

# もしかしたら進む方向が間違ってるのかもしれないけど…(^^;
--
民斗 <tommy / valley.ne.jp>