Modifier and Type | Method and Description |
---|---|
List<Object> |
MethodCallFinder.getSubBodyFromSingleSubBodyNode(ASTNode node) |
List<Object> |
MethodCallFinder.getSubBodyFromSingleSubBodyNode(ASTNode node) |
Modifier and Type | Class and Description |
---|---|
class |
ASTControlFlowNode |
class |
ASTDoWhileNode |
class |
ASTForLoopNode |
class |
ASTIfElseNode |
class |
ASTIfNode |
class |
ASTLabeledBlockNode |
class |
ASTLabeledNode |
class |
ASTMethodNode |
class |
ASTStatementSequenceNode |
class |
ASTSwitchNode |
class |
ASTSynchronizedBlockNode |
class |
ASTTryNode |
class |
ASTUnconditionalLoopNode |
class |
ASTWhileNode |
Modifier and Type | Method and Description |
---|---|
ASTNode |
SETDoWhileNode.emit_AST() |
ASTNode |
SETIfElseNode.emit_AST() |
ASTNode |
SETLabeledBlockNode.emit_AST() |
abstract ASTNode |
SETNode.emit_AST() |
ASTNode |
SETStatementSequenceNode.emit_AST() |
ASTNode |
SETSwitchNode.emit_AST() |
ASTNode |
SETSynchronizedBlockNode.emit_AST() |
ASTNode |
SETTopNode.emit_AST() |
ASTNode |
SETTryNode.emit_AST() |
ASTNode |
SETUnconditionalWhileNode.emit_AST() |
ASTNode |
SETWhileNode.emit_AST() |
ASTNode |
SETTryNode.emit_AST() |
ASTNode |
SETSynchronizedBlockNode.emit_AST() |
ASTNode |
SETSwitchNode.emit_AST() |
ASTNode |
SETIfElseNode.emit_AST() |
ASTNode |
SETDoWhileNode.emit_AST() |
ASTNode |
SETLabeledBlockNode.emit_AST() |
ASTNode |
SETUnconditionalWhileNode.emit_AST() |
ASTNode |
SETWhileNode.emit_AST() |
ASTNode |
SETStatementSequenceNode.emit_AST() |
ASTNode |
SETTopNode.emit_AST() |
abstract ASTNode |
SETNode.emit_AST() |
Modifier and Type | Method and Description |
---|---|
void |
ASTAnalysis.analyseASTNode(ASTNode n) |
void |
TryContentsFinder.analyseASTNode(ASTNode n) |
void |
UselessTryRemover.analyseASTNode(ASTNode n) |
void |
UselessTryRemover.analyseASTNode(ASTNode n) |
void |
TryContentsFinder.analyseASTNode(ASTNode n) |
void |
ASTAnalysis.analyseASTNode(ASTNode n) |
Modifier and Type | Method and Description |
---|---|
void |
DepthFirstAdapter.normalRetrieving(ASTNode node) |
void |
DepthFirstAdapter.normalRetrieving(ASTNode node) |
Modifier and Type | Method and Description |
---|---|
List<DavaFlowSet<T>> |
DavaFlowSet.getImplicitlyBrokenSets(ASTNode node) |
List<DavaFlowSet<T>> |
DavaFlowSet.getImplicitlyBrokenSets(ASTNode node) |
List<DavaFlowSet<T>> |
DavaFlowSet.getImplicitlyContinuedSets(ASTNode node) |
List<DavaFlowSet<T>> |
DavaFlowSet.getImplicitlyContinuedSets(ASTNode node) |
String |
StructuredAnalysis.getLabel(ASTNode node)
returns label on the ASTNode null if the ASTNode cannot hold a label or
if the label is null
|
String |
StructuredAnalysis.getLabel(ASTNode node)
returns label on the ASTNode null if the ASTNode cannot hold a label or
if the label is null
|
DavaFlowSet<E> |
StructuredAnalysis.handleBreak(String label,
DavaFlowSet<E> out,
ASTNode node)
Need to handleBreak stmts There can be explicit breaks (in which case
label is non null) There can always be implicit breaks ASTNode is non
null
|
DavaFlowSet<E> |
StructuredAnalysis.handleBreak(String label,
DavaFlowSet<E> out,
ASTNode node)
Need to handleBreak stmts There can be explicit breaks (in which case
label is non null) There can always be implicit breaks ASTNode is non
null
|
DavaFlowSet |
UnreachableCodeFinder.handleBreak(String label,
DavaFlowSet output,
ASTNode node) |
DavaFlowSet |
UnreachableCodeFinder.handleBreak(String label,
DavaFlowSet output,
ASTNode node) |
DavaFlowSet<E> |
StructuredAnalysis.handleContinue(String label,
DavaFlowSet<E> out,
ASTNode node)
Need to handleContinue stmts There can be explicit continues (in which
case label is non null) There can always be implicit continues ASTNode is
non null
|
DavaFlowSet<E> |
StructuredAnalysis.handleContinue(String label,
DavaFlowSet<E> out,
ASTNode node)
Need to handleContinue stmts There can be explicit continues (in which
case label is non null) There can always be implicit continues ASTNode is
non null
|
DavaFlowSet |
UnreachableCodeFinder.ifNotReachableReturnInputElseProcessBodyAndReturnTrue(ASTNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.ifNotReachableReturnInputElseProcessBodyAndReturnTrue(ASTNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTNode(ASTNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTNode(ASTNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processSingleSubBodyNode(ASTNode node,
DavaFlowSet<E> input)
This method is called from the specialized ASTNodes.
|
DavaFlowSet<E> |
StructuredAnalysis.processSingleSubBodyNode(ASTNode node,
DavaFlowSet<E> input)
This method is called from the specialized ASTNodes.
|
Modifier and Type | Method and Description |
---|---|
static List<ASTNode> |
StrengthenByIfElse.getNewNode(ASTNode loopNode,
ASTIfElseNode ifElseNode) |
static List<ASTNode> |
StrengthenByIfElse.getNewNode(ASTNode loopNode,
ASTIfElseNode ifElseNode) |
static List<ASTNode> |
StrengthenByIf.getNewNode(ASTNode loopNode,
ASTIfNode ifNode) |
static List<ASTNode> |
StrengthenByIf.getNewNode(ASTNode loopNode,
ASTIfNode ifNode) |
Modifier and Type | Method and Description |
---|---|
boolean |
EliminateConditions.canChange(Boolean returned,
ASTNode temp) |
boolean |
EliminateConditions.canChange(Boolean returned,
ASTNode temp) |
boolean |
EliminateConditions.change(Boolean returned,
ASTNode temp) |
boolean |
EliminateConditions.change(Boolean returned,
ASTNode temp) |
static void |
OrAggregatorThree.checkAndTransform(ASTNode node,
ASTIfNode ifOne,
ASTIfNode ifTwo,
int nodeNumber,
int subBodyNumber) |
static void |
OrAggregatorThree.checkAndTransform(ASTNode node,
ASTIfNode ifOne,
ASTIfNode ifTwo,
int nodeNumber,
int subBodyNumber) |
boolean |
UselessAbruptStmtRemover.checkChildLastInParent(ASTNode child,
ASTNode parent) |
boolean |
UselessAbruptStmtRemover.checkChildLastInParent(ASTNode child,
ASTNode parent) |
void |
DeInliningFinalFields.checkConditionalUses(Object cond,
ASTNode node) |
void |
DeInliningFinalFields.checkConditionalUses(Object cond,
ASTNode node) |
static List<Object> |
LoopStrengthener.createNewSubBody(List<Object> oldSubBody,
int nodeNumber,
ASTNode oldNode,
List<ASTNode> newNode) |
static List<Object> |
LoopStrengthener.createNewSubBody(List<Object> oldSubBody,
int nodeNumber,
ASTNode oldNode,
List<ASTNode> newNode) |
Boolean |
EliminateConditions.eliminate(ASTNode node) |
Boolean |
EliminateConditions.eliminate(ASTNode node) |
Boolean |
EliminateConditions.eliminateForTry(ASTNode node) |
Boolean |
EliminateConditions.eliminateForTry(ASTNode node) |
boolean |
UselessLabelFinder.findAndKill(ASTNode node) |
boolean |
UselessLabelFinder.findAndKill(ASTNode node) |
static List<ASTNode> |
StrengthenByIfElse.getNewNode(ASTNode loopNode,
ASTIfElseNode ifElseNode) |
static List<ASTNode> |
StrengthenByIfElse.getNewNode(ASTNode loopNode,
ASTIfElseNode ifElseNode) |
static List<ASTNode> |
StrengthenByIf.getNewNode(ASTNode loopNode,
ASTIfNode ifNode) |
static List<ASTNode> |
StrengthenByIf.getNewNode(ASTNode loopNode,
ASTIfNode ifNode) |
void |
ASTCleaner.normalRetrieving(ASTNode node) |
void |
ASTCleanerTwo.normalRetrieving(ASTNode node) |
void |
EliminateConditions.normalRetrieving(ASTNode node) |
void |
ForLoopCreator.normalRetrieving(ASTNode node) |
void |
LoopStrengthener.normalRetrieving(ASTNode node) |
void |
UnreachableCodeEliminator.normalRetrieving(ASTNode node) |
void |
ASTCleaner.normalRetrieving(ASTNode node) |
void |
EliminateConditions.normalRetrieving(ASTNode node) |
void |
UnreachableCodeEliminator.normalRetrieving(ASTNode node) |
void |
ASTCleanerTwo.normalRetrieving(ASTNode node) |
void |
LoopStrengthener.normalRetrieving(ASTNode node) |
void |
ForLoopCreator.normalRetrieving(ASTNode node) |
static void |
EmptyElseRemover.removeElseBody(ASTNode node,
ASTIfElseNode ifElseNode,
int subBodyNumber,
int nodeNumber) |
static void |
EmptyElseRemover.removeElseBody(ASTNode node,
ASTIfElseNode ifElseNode,
int subBodyNumber,
int nodeNumber) |
static void |
UselessLabeledBlockRemover.removeLabeledBlock(ASTNode node,
ASTLabeledBlockNode labelBlock,
int subBodyNumber,
int nodeNumber) |
static void |
UselessLabeledBlockRemover.removeLabeledBlock(ASTNode node,
ASTLabeledBlockNode labelBlock,
int subBodyNumber,
int nodeNumber) |
Modifier and Type | Method and Description |
---|---|
static List<Object> |
LoopStrengthener.createNewSubBody(List<Object> oldSubBody,
int nodeNumber,
ASTNode oldNode,
List<ASTNode> newNode) |
static List<Object> |
LoopStrengthener.createNewSubBody(List<Object> oldSubBody,
int nodeNumber,
ASTNode oldNode,
List<ASTNode> newNode) |
Constructor and Description |
---|
LocalVariableCleaner(ASTNode AST) |
LocalVariableCleaner(ASTNode AST) |
LocalVariableCleaner(boolean verbose,
ASTNode AST) |
LocalVariableCleaner(boolean verbose,
ASTNode AST) |
UnreachableCodeEliminator(ASTNode AST) |
UnreachableCodeEliminator(ASTNode AST) |
UnreachableCodeEliminator(boolean verbose,
ASTNode AST) |
UnreachableCodeEliminator(boolean verbose,
ASTNode AST) |
Modifier and Type | Method and Description |
---|---|
ASTNode |
ClosestAbruptTargetFinder.getTarget(DAbruptStmt ab)
To be invoked by other analyses.
|
ASTNode |
ClosestAbruptTargetFinder.getTarget(DAbruptStmt ab)
To be invoked by other analyses.
|
Modifier and Type | Method and Description |
---|---|
void |
ASTUsesAndDefs.checkConditionalUses(ASTCondition cond,
ASTNode node) |
void |
AllVariableUses.checkConditionalUses(ASTCondition cond,
ASTNode node) |
void |
ASTUsesAndDefs.checkConditionalUses(ASTCondition cond,
ASTNode node) |
void |
AllVariableUses.checkConditionalUses(ASTCondition cond,
ASTNode node) |
Constructor and Description |
---|
ASTUsesAndDefs(ASTNode AST) |
ASTUsesAndDefs(ASTNode AST) |
ASTUsesAndDefs(boolean verbose,
ASTNode AST) |
ASTUsesAndDefs(boolean verbose,
ASTNode AST) |
CopyPropagation(ASTNode AST) |
CopyPropagation(ASTNode AST) |
CopyPropagation(boolean verbose,
ASTNode AST) |
CopyPropagation(boolean verbose,
ASTNode AST) |