[Soot-list] How retrieve a method's list of parameters?
John Dean
jdean4 at kc.rr.com
Sat Aug 4 18:47:41 EDT 2012
Phil,
Thanks. That looks perfect!
John
-----Original Message-----
From: phil.pratt.szeliga at gmail.com [mailto:phil.pratt.szeliga at gmail.com] On
Behalf Of Phil Pratt-Szeliga
Sent: Saturday, August 04, 2012 3:34 PM
To: john.dean at park.edu
Cc: soot-list at sable.mcgill.ca
Subject: Re: [Soot-list] How retrieve a method's list of parameters?
Hi John,
If you have a Body object named body:
SootMethod method = body.getMethod();
int num_params = method.getParameterCount();
See: http://www.sable.mcgill.ca/soot/doc/soot/SootMethod.html
Phil Pratt-Szeliga
Syracuse University
On Sat, Aug 4, 2012 at 3:37 PM, John Dean <jdean4 at kc.rr.com> wrote:
> Hi all,
> I need to be able to tell if a variable is a parameter (passed to a
> method) as opposed to a regular local variable.
> Initially, I tried to identify a parameter by using instanceof
> ParameterRef, but that doesn't work. Testing tells me that parameter
> variables are instances of JimpleLocal and not ParameterRef.
>
> I've now discovered that I can use Body.getParameterLocal(0) to
> retrieve the first parameter. But if I want to compare my variable to
> all the retrieved getParameterLocal variables, I would have to have
> to be able to retrieve all the parameters, and I don't know how to do
> that. If I knew the number of parameters, I could loop through all the
> parameters, but I don't know how to retrieve the number of parameters.
>
> Suggestions?
>
> Thanks,
> John
>
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>
>
More information about the Soot-list
mailing list