Class SuperFirstStmtHandler
- java.lang.Object
-
- soot.dava.toolkits.base.AST.analysis.AnalysisAdapter
-
- soot.dava.toolkits.base.AST.analysis.DepthFirstAdapter
-
- soot.dava.toolkits.base.AST.transformations.SuperFirstStmtHandler
-
- All Implemented Interfaces:
Analysis
public class SuperFirstStmtHandler extends DepthFirstAdapter
-
-
Field Summary
Fields Modifier and Type Field Description booleanDEBUG
-
Constructor Summary
Constructors Constructor Description SuperFirstStmtHandler(boolean verbose, ASTMethodNode AST)SuperFirstStmtHandler(ASTMethodNode AST)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanchangeOriginalAST()voidcreateNewASTConstructor(ASTStatementSequenceNode initNode)AugmentedStmtcreateStmtAccordingToType(Type tempType, Value tempVal, Local newLocal, SootMethodRef getMethodRef)voiddebug(String methodName, String debug)ValuegetProperCasting(Type tempType, DVirtualInvokeExpr tempInvokeExpr)voidinASTStatementSequenceNode(ASTStatementSequenceNode node)voidinitialize()voidremoveInit()-
Methods inherited from class soot.dava.toolkits.base.AST.analysis.DepthFirstAdapter
caseArrayRef, caseASTAndCondition, caseASTBinaryCondition, caseASTDoWhileNode, caseASTForLoopNode, caseASTIfElseNode, caseASTIfNode, caseASTLabeledBlockNode, caseASTMethodNode, caseASTOrCondition, caseASTStatementSequenceNode, caseASTSwitchNode, caseASTSynchronizedBlockNode, caseASTTryNode, caseASTUnaryCondition, caseASTUnconditionalLoopNode, caseASTWhileNode, caseBinopExpr, caseCastExpr, caseDefinitionStmt, caseDVariableDeclarationStmt, caseExpr, caseExprOrRefValueBox, caseInstanceFieldRef, caseInstanceInvokeExpr, caseInstanceOfExpr, caseInvokeExpr, caseInvokeStmt, caseNewArrayExpr, caseNewMultiArrayExpr, caseRef, caseReturnStmt, caseStaticFieldRef, caseStmt, caseThrowStmt, caseType, caseUnopExpr, caseValue, debug, decideCaseExpr, decideCaseExprOrRef, decideCaseRef, inArrayRef, inASTAndCondition, inASTBinaryCondition, inASTDoWhileNode, inASTForLoopNode, inASTIfElseNode, inASTIfNode, inASTLabeledBlockNode, inASTMethodNode, inASTOrCondition, inASTSwitchNode, inASTSynchronizedBlockNode, inASTTryNode, inASTUnaryCondition, inASTUnconditionalLoopNode, inASTWhileNode, inBinopExpr, inCastExpr, inDefinitionStmt, inDVariableDeclarationStmt, inExpr, inExprOrRefValueBox, inInstanceFieldRef, inInstanceInvokeExpr, inInstanceOfExpr, inInvokeExpr, inInvokeStmt, inNewArrayExpr, inNewMultiArrayExpr, inRef, inReturnStmt, inStaticFieldRef, inStmt, inThrowStmt, inType, inUnopExpr, inValue, normalRetrieving, outArrayRef, outASTAndCondition, outASTBinaryCondition, outASTDoWhileNode, outASTForLoopNode, outASTIfElseNode, outASTIfNode, outASTLabeledBlockNode, outASTMethodNode, outASTOrCondition, outASTStatementSequenceNode, outASTSwitchNode, outASTSynchronizedBlockNode, outASTTryNode, outASTUnaryCondition, outASTUnconditionalLoopNode, outASTWhileNode, outBinopExpr, outCastExpr, outDefinitionStmt, outDVariableDeclarationStmt, outExpr, outExprOrRefValueBox, outInstanceFieldRef, outInstanceInvokeExpr, outInstanceOfExpr, outInvokeExpr, outInvokeStmt, outNewArrayExpr, outNewMultiArrayExpr, outRef, outReturnStmt, outStaticFieldRef, outStmt, outThrowStmt, outType, outUnopExpr, outValue
-
Methods inherited from class soot.dava.toolkits.base.AST.analysis.AnalysisAdapter
defaultCase
-
-
-
-
Field Detail
-
DEBUG
public final boolean DEBUG
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SuperFirstStmtHandler
public SuperFirstStmtHandler(ASTMethodNode AST)
-
SuperFirstStmtHandler
public SuperFirstStmtHandler(boolean verbose, ASTMethodNode AST)
-
-
Method Detail
-
initialize
public void initialize()
-
inASTStatementSequenceNode
public void inASTStatementSequenceNode(ASTStatementSequenceNode node)
- Overrides:
inASTStatementSequenceNodein classDepthFirstAdapter
-
removeInit
public void removeInit()
-
changeOriginalAST
public boolean changeOriginalAST()
-
getProperCasting
public Value getProperCasting(Type tempType, DVirtualInvokeExpr tempInvokeExpr)
-
createNewASTConstructor
public void createNewASTConstructor(ASTStatementSequenceNode initNode)
-
createStmtAccordingToType
public AugmentedStmt createStmtAccordingToType(Type tempType, Value tempVal, Local newLocal, SootMethodRef getMethodRef)
-
-