[#49993] メソッド呼び出し時の引数の値を VM 側で取得する方法について — Tetsuo Handa <penguin-kernel@...>
初めまして。 Linux カーネルプログラマの熊猫と申します。
12 messages
2017/02/28
[#49995] Re: メソッド呼び出し時の引数の値を VM 側で取得する方法について
— SASADA Koichi <ko1@...>
2017/02/28
On 2017/02/28 14:06, Tetsuo Handa wrote:
[#49997] Re: メソッド呼び出し時の引数の値を VM 側で取得する方法について
— Tetsuo Handa <penguin-kernel@...>
2017/02/28
SASADA Koichi さんは書きました:
[#49999] Re: メソッド呼び出し時の引数の値を VM 側で取得する方法について
— SASADA Koichi <ko1@...>
2017/02/28
On 2017/02/28 14:53, Tetsuo Handa wrote:
[#50000] Re: メソッド呼び出し時の引数の値を VM 側で取得する方法について
— Tetsuo Handa <penguin-kernel@...>
2017/03/01
SASADA Koichi さんは書きました:
[ruby-dev:49994] Re: メソッド呼び出し時の引数の値を VM 側で取得する方法について
From:
SASADA Koichi <ko1@...>
Date:
2017-02-28 05:13:13 UTC
List:
ruby-dev #49994
On 2017/02/28 14:06, Tetsuo Handa wrote: > 現在、 Ruby VM に手を加えることで、メソッド呼び出し時の引数の値/メソッドから > 復帰する時の戻り値の値を取得する方法を探しています。 まず、後者から。TracePoint#return_value にて採れますので、そのあたりの コードをチェックされると良いと思います。 引数については、全部をチェックする方法はありませんが、例えば rb_inspect が問題であるのなら、rb_obj_info_dump() や rb_raw_obj_info() を使うと、 inspect 呼び出しをせずに、全部じゃないですが、なんとなく値を取得すること が可能です。 これらは、Ruby 的な正攻法では、TracePoint を利用して下さい、ということに なるかと思いますが、Ruby を弄るようでしたら、これらも選択肢ということで。 用途がはっきりわかると、もう少し何か言えるかもしれません。 -- // SASADA Koichi at atdot dot net