Package sootup.core.util.printer
Class LabeledStmtPrinter
java.lang.Object
sootup.core.util.printer.StmtPrinter
sootup.core.util.printer.AbstractStmtPrinter
sootup.core.util.printer.LabeledStmtPrinter
- Direct Known Subclasses:
BriefStmtPrinter
,NormalStmtPrinter
-
Field Summary
Modifier and TypeFieldDescriptionbranch targets *for stmt references in Phi nodes (ms: and other occurences TODO: check and improve comment) *Fields inherited from class sootup.core.util.printer.AbstractStmtPrinter
indent, indentChar, indentStep, output, startOfLine
Fields inherited from class sootup.core.util.printer.StmtPrinter
graph
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionbuildTraps
(StmtGraph stmtGraph) hint: little expensive getter - its more of a build/create - currently no overlapsabstract void
void
fieldSignature
(FieldSignature fieldSig) getLabeledStmts
(StmtGraph stmtGraph, List<Trap> traps) Returns the result of iterating through all Stmts in this body.getTrapComparator
(Map<Stmt, Integer> stmtsBlockIdx) Comparator which sorts the trap output in getTraps()getTraps()
abstract void
initializeSootMethod
(StmtGraph<?> stmtGraph) createLabelMapsabstract void
abstract void
method
(SootMethod m) void
methodSignature
(MethodSignature methodSig) void
Methods inherited from class sootup.core.util.printer.AbstractStmtPrinter
addImport, constant, decIndent, endStmt, getImports, handleIndent, incIndent, local, modifier, newline, noIndent, setIndent, startStmt, stmt, toString, typeSignature
Methods inherited from class sootup.core.util.printer.StmtPrinter
getGraph
-
Field Details
-
labels
branch targets * -
references
for stmt references in Phi nodes (ms: and other occurences TODO: check and improve comment) *
-
-
Constructor Details
-
LabeledStmtPrinter
public LabeledStmtPrinter()
-
-
Method Details
-
getLabels
-
getReferences
-
literal
- Specified by:
literal
in classStmtPrinter
-
method
- Specified by:
method
in classStmtPrinter
-
field
- Specified by:
field
in classStmtPrinter
-
identityRef
- Specified by:
identityRef
in classStmtPrinter
-
stmtRef
- Specified by:
stmtRef
in classStmtPrinter
-
initializeSootMethod
createLabelMaps- Returns:
- the linearized StmtGraph
-
methodSignature
- Specified by:
methodSignature
in classStmtPrinter
-
fieldSignature
- Specified by:
fieldSignature
in classStmtPrinter
-
buildTraps
hint: little expensive getter - its more of a build/create - currently no overlaps -
getTrapComparator
Comparator which sorts the trap output in getTraps() -
getLabeledStmts
Returns the result of iterating through all Stmts in this body. All Stmts thus found are returned. Branching Stmts and statements which use PhiExpr will have Stmts; a Stmt contains a Stmt that is either a target of a branch or is being used as a pointer to the end of a CFG block.This method was typically used for pointer patching, e.g. when the unit chain is cloned.
- Returns:
- A collection of all the Stmts that are targets of a BranchingStmt
-
getTraps
-