|
||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||
public interface MethodCallTranslator
Handles certain method calls specially by creating intermediate statements for them.
These methods will typically be the string operations in String, StringBuffer,
and StringBuilder. The goal of an implementation is to provide higher precision.
CompositeMethodCallTranslator.
| Method Summary | |
|---|---|
Variable |
translateAbstractMethodCall(InstanceInvokeExpr expr,
SootMethod target,
Variable callee,
List<Variable> arguments,
IntermediateFactory factory)
Translates a non-static method call made to the specified method, which might be directed to a different implementation than that method. |
boolean |
translateConstructorCall(InstanceInvokeExpr expr,
Variable callee,
List<Variable> arguments,
IntermediateFactory factory)
Translates a constructor invocation into a sequence of statements. |
Variable |
translateMethodCall(InstanceInvokeExpr expr,
SootMethod target,
Variable callee,
List<Variable> arguments,
IntermediateFactory factory)
Translates a non-static method call into a sequence of statements. |
Variable |
translateStaticMethodCall(InvokeExpr expr,
List<Variable> arguments,
IntermediateFactory factory)
Translates a static method call into a sequence of statements. |
| Method Detail |
|---|
Variable translateAbstractMethodCall(InstanceInvokeExpr expr,
SootMethod target,
Variable callee,
List<Variable> arguments,
IntermediateFactory factory)
translateMethodCall(soot.jimple.InstanceInvokeExpr, soot.SootMethod, dk.brics.string.intermediate.Variable, java.util.List, dk.brics.string.java.IntermediateFactory) variant. If no translation can be found for an abstract invocation, each possible
invocation target is inspected and translateMethodCall(soot.jimple.InstanceInvokeExpr, soot.SootMethod, dk.brics.string.intermediate.Variable, java.util.List, dk.brics.string.java.IntermediateFactory) will then be called for each target.
expr - the soot invocation expression. This provides access to the called method, parameter types, and declaring class.target - the concrete implementation of the method being called. The expression might refer to a non-final method
which is overridden or implemented by the target.callee - variable holding the object being called on.arguments - variables holding the (already evaluated) arguments.factory - object used to create statements and variables.
boolean translateConstructorCall(InstanceInvokeExpr expr,
Variable callee,
List<Variable> arguments,
IntermediateFactory factory)
expr - the soot invocation expression. This provides access to the called method, parameter types, and declaring class.callee - variable holding the object being called on.arguments - variables holding the (already evaluated) arguments.factory - object used to create statements and variables.
Variable translateMethodCall(InstanceInvokeExpr expr,
SootMethod target,
Variable callee,
List<Variable> arguments,
IntermediateFactory factory)
expr - the soot invocation expression. This provides access to the called method, parameter types, and declaring class.target - the concrete implementation of the method being called. The expression might refer to a non-final method
which is overridden or implemented by the target.callee - variable holding the object being called on.arguments - variables holding the (already evaluated) arguments.factory - object used to create statements and variables.
Variable translateStaticMethodCall(InvokeExpr expr,
List<Variable> arguments,
IntermediateFactory factory)
expr - the soot invocation expression. This provides access to the called method, parameter types, and declaring class.arguments - variables holding the (already evaluated) arguments.factory - object used to create statements and variables
|
||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||