Public Methods | |
ExprExtractor (TransSystem system, Stmt stmt, LocalDefs localDefs, SootMethod method, TypeExtractor typeExtract, PredicateSet predSet) | |
void | caseAddExpr (AddExpr expr) |
void | caseAndExpr (AndExpr expr) |
void | caseArrayRef (ArrayRef expr) |
void | caseCastExpr (CastExpr expr) |
void | caseChooseExpr (ChooseExpr expr) |
void | caseComplementExpr (ComplementExpr expr) |
void | caseDivExpr (DivExpr expr) |
void | caseEqExpr (EqExpr expr) |
void | caseGeExpr (GeExpr expr) |
void | caseGtExpr (GtExpr expr) |
void | caseInExpr (InExpr expr) |
void | caseInstanceFieldRef (InstanceFieldRef expr) |
void | caseInstanceOfExpr (InstanceOfExpr expr) |
void | caseIntConstant (IntConstant expr) |
void | caseLeExpr (LeExpr expr) |
void | caseLengthExpr (LengthExpr expr) |
void | caseLocal (Local expr) |
void | caseLocalExpr (LocalExpr expr) |
void | caseLocationTestExpr (LocationTestExpr expr) |
void | caseLogicalAndExpr (LogicalAndExpr expr) |
void | caseLogicalOrExpr (LogicalOrExpr expr) |
void | caseLtExpr (LtExpr expr) |
void | caseMulExpr (MulExpr expr) |
void | caseNeExpr (NeExpr expr) |
void | caseNegExpr (NegExpr expr) |
void | caseNewArrayExpr (NewArrayExpr expr) |
void | caseNewExpr (NewExpr expr) |
void | caseNullConstant (NullConstant expr) |
void | caseOrExpr (OrExpr expr) |
void | caseRemExpr (RemExpr expr) |
void | caseStaticFieldRef (StaticFieldRef expr) |
void | caseStaticInvokeExpr (StaticInvokeExpr expr) |
void | caseStringConstant (StringConstant expr) |
void | caseSubExpr (SubExpr expr) |
void | caseThisRef (ThisRef thisRef) |
void | defaultCase (Object o) |
boolean | isObservable () |
Static Public Methods | |
String | localKey (SootMethod method, Local local) |
Private Attributes | |
TransSystem | system |
Stmt | stmt |
LocalDefs | localDefs |
SootMethod | method |
TypeExtractor | typeExtract |
PredicateSet | predSet |
boolean | observable = false |
Definition at line 55 of file ExprExtractor.java.
|
Jimple extension: choose from a set of values. Reimplemented from AbstractBanderaValueSwitch. Definition at line 112 of file ExprExtractor.java. |
|
Reimplemented from AbstractBanderaValueSwitch. Definition at line 125 of file ExprExtractor.java. |
|
InExpr is a Jimple extension to support tests on abstracted types. It tests a value for membership in a set of constants. We translate this test to a disjunction of equality tests. Reimplemented from AbstractBanderaValueSwitch. Definition at line 174 of file ExprExtractor.java. |
|
A LocalExpr is a Jimple extension that carries its own method (so a Local can appear in a predicate expression, which is extracted outside the context of any method). Reimplemented from AbstractBanderaValueSwitch. Definition at line 260 of file ExprExtractor.java. |
|
Reimplemented from AbstractBanderaValueSwitch. Definition at line 269 of file ExprExtractor.java. |
|
Reimplemented from AbstractBanderaValueSwitch. Definition at line 292 of file ExprExtractor.java. |
|
Reimplemented from AbstractBanderaValueSwitch. Definition at line 301 of file ExprExtractor.java. |
|
Construct a unique key for a Jimple Local by concatenating the class, method, and local name. We need to do this rather than just use the Local object as a key because the Soot designers decided that two Locals would be equal() if they had the same name, even if they were in different methods. Definition at line 426 of file ExprExtractor.java. |