From: Kent Sibilev Date: 2004-12-12T14:42:56+09:00 Subject: Re: How to get parameter names when in set_trace_func callback? AFAIK, There is no official way to get names of method parameters. But you can try this: def m(a,b) end tracer = lambda do |*args| p eval("local_variables", args[4]) if args[0] == 'call' end set_trace_func tracer m(1, 2) Cheers, Kent. On Dec 11, 2004, at 1:47 PM, Stephen Kellett wrote: > Hi folks, > > When my code is executing my trace_function set using set_trace_func > how > do I get the parameter names of the function that is being traced? Say > for example I had a function > > def myFunc(firstName, secondName, age) > do whatever 1 > do whatever 2 > do whatever 3 > end > > and my trace function has been called for a line execution event for > "do > whatever 2". I can get the filename and line number from the binding. > How do I get the parameter names? > > I've spent all this afternoon trying to do this, examining the Ruby > source, but can't work it out. Hope someone can help me, or tell me it > can't be done :-( > > Stephen > -- > Stephen Kellett > Object Media Limited http://www.objmedia.demon.co.uk > RSI Information: http://www.objmedia.demon.co.uk/rsi.html >