Package | Description |
---|---|
soot.dava.toolkits.base.AST.structuredAnalysis |
Modifier and Type | Class and Description |
---|---|
class |
CPFlowSet |
class |
UnreachableCodeFinder.UnreachableCodeFlowSet |
Modifier and Type | Method and Description |
---|---|
List<DavaFlowSet<T>> |
DavaFlowSet.getBreakSet(String label) |
List<DavaFlowSet<T>> |
DavaFlowSet.getBreakSet(String label) |
List<DavaFlowSet<T>> |
DavaFlowSet.getContinueSet(String label) |
List<DavaFlowSet<T>> |
DavaFlowSet.getContinueSet(String label) |
HashMap<Serializable,List<DavaFlowSet<T>>> |
DavaFlowSet.getImplicitBreaks() |
HashMap<Serializable,List<DavaFlowSet<T>>> |
DavaFlowSet.getImplicitBreaks() |
HashMap<Serializable,List<DavaFlowSet<T>>> |
DavaFlowSet.getImplicitContinues() |
HashMap<Serializable,List<DavaFlowSet<T>>> |
DavaFlowSet.getImplicitContinues() |
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) |
Modifier and Type | Method and Description |
---|---|
void |
DavaFlowSet.addToBreakList(String labelBroken,
DavaFlowSet<T> set)
When an explicit break statement is encountered this method should be
called to store the current davaflowset
|
void |
DavaFlowSet.addToBreakList(String labelBroken,
DavaFlowSet<T> set)
When an explicit break statement is encountered this method should be
called to store the current davaflowset
|
void |
DavaFlowSet.addToContinueList(String labelContinued,
DavaFlowSet<T> set)
When an explicit continue statement is encountered this method should be
called to store the current davaflowset
|
void |
DavaFlowSet.addToContinueList(String labelContinued,
DavaFlowSet<T> set)
When an explicit continue statement is encountered this method should be
called to store the current davaflowset
|
void |
DavaFlowSet.addToImplicitBreaks(DAbruptStmt ab,
DavaFlowSet<T> set)
The next two methods take an abruptStmt as input along with a flowSet.
|
void |
DavaFlowSet.addToImplicitBreaks(DAbruptStmt ab,
DavaFlowSet<T> set)
The next two methods take an abruptStmt as input along with a flowSet.
|
void |
DavaFlowSet.addToImplicitContinues(DAbruptStmt ab,
DavaFlowSet<T> set) |
void |
DavaFlowSet.addToImplicitContinues(DAbruptStmt ab,
DavaFlowSet<T> set) |
DavaFlowSet |
CP.cloneFlowSet(DavaFlowSet flowSet) |
DavaFlowSet |
MustMayInitialize.cloneFlowSet(DavaFlowSet flowSet) |
DavaFlowSet |
ReachingCopies.cloneFlowSet(DavaFlowSet flowSet) |
UnreachableCodeFinder.UnreachableCodeFlowSet |
UnreachableCodeFinder.cloneFlowSet(DavaFlowSet flowSet) |
DavaFlowSet |
MustMayInitialize.cloneFlowSet(DavaFlowSet flowSet) |
UnreachableCodeFinder.UnreachableCodeFlowSet |
UnreachableCodeFinder.cloneFlowSet(DavaFlowSet flowSet) |
DavaFlowSet |
CP.cloneFlowSet(DavaFlowSet flowSet) |
DavaFlowSet |
ReachingCopies.cloneFlowSet(DavaFlowSet flowSet) |
abstract DavaFlowSet<E> |
StructuredAnalysis.cloneFlowSet(DavaFlowSet<E> flowSet)
Make a clone of the flowset The implementor should know when they want a
shallow or deep clone
|
abstract DavaFlowSet<E> |
StructuredAnalysis.cloneFlowSet(DavaFlowSet<E> flowSet)
Make a clone of the flowset The implementor should know when they want a
shallow or deep clone
|
DavaFlowSet<Stmt> |
ReachingDefs.cloneFlowSet(DavaFlowSet<Stmt> flowSet) |
DavaFlowSet<Stmt> |
ReachingDefs.cloneFlowSet(DavaFlowSet<Stmt> flowSet) |
void |
DavaFlowSet.copyInternalDataFrom(DavaFlowSet<T> fromThis) |
void |
DavaFlowSet.copyInternalDataFrom(DavaFlowSet<T> fromThis) |
void |
ReachingDefs.gen(DavaFlowSet<Stmt> in,
DefinitionStmt s) |
void |
ReachingDefs.gen(DavaFlowSet<Stmt> in,
DefinitionStmt s) |
void |
ReachingCopies.gen(DavaFlowSet in,
Local left,
Local right) |
void |
ReachingCopies.gen(DavaFlowSet in,
Local left,
Local right) |
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) |
boolean |
StructuredAnalysis.isDifferent(DavaFlowSet<E> oldObj,
DavaFlowSet<E> newObj) |
boolean |
StructuredAnalysis.isDifferent(DavaFlowSet<E> oldObj,
DavaFlowSet<E> newObj) |
boolean |
StructuredAnalysis.isDifferent(DavaFlowSet<E> oldObj,
DavaFlowSet<E> newObj) |
boolean |
StructuredAnalysis.isDifferent(DavaFlowSet<E> oldObj,
DavaFlowSet<E> newObj) |
void |
ReachingCopies.kill(DavaFlowSet<ReachingCopies.LocalPair> in,
Local redefined) |
void |
ReachingCopies.kill(DavaFlowSet<ReachingCopies.LocalPair> in,
Local redefined) |
void |
ReachingDefs.kill(DavaFlowSet<Stmt> in,
Local redefined) |
void |
ReachingDefs.kill(DavaFlowSet<Stmt> in,
Local redefined) |
DavaFlowSet<E> |
StructuredAnalysis.merge(DavaFlowSet<E> in1,
DavaFlowSet<E> in2) |
DavaFlowSet<E> |
StructuredAnalysis.merge(DavaFlowSet<E> in1,
DavaFlowSet<E> in2) |
DavaFlowSet<E> |
StructuredAnalysis.merge(DavaFlowSet<E> in1,
DavaFlowSet<E> in2) |
DavaFlowSet<E> |
StructuredAnalysis.merge(DavaFlowSet<E> in1,
DavaFlowSet<E> in2) |
DavaFlowSet<E> |
StructuredAnalysis.mergeExplicitAndImplicit(String label,
DavaFlowSet<E> output,
List<DavaFlowSet<E>> explicitSet,
List<DavaFlowSet<E>> implicitSet) |
DavaFlowSet<E> |
StructuredAnalysis.mergeExplicitAndImplicit(String label,
DavaFlowSet<E> output,
List<DavaFlowSet<E>> explicitSet,
List<DavaFlowSet<E>> implicitSet) |
DavaFlowSet<E> |
StructuredAnalysis.process(Object body,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.process(Object body,
DavaFlowSet<E> input) |
DavaFlowSet |
UnreachableCodeFinder.processAbruptStatements(Stmt s,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processAbruptStatements(Stmt s,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processAbruptStatements(Stmt s,
DavaFlowSet<E> input)
Whenever a statement has to be processed the first step is to invoke this
method.
|
DavaFlowSet<E> |
StructuredAnalysis.processAbruptStatements(Stmt s,
DavaFlowSet<E> input)
Whenever a statement has to be processed the first step is to invoke this
method.
|
DavaFlowSet |
UnreachableCodeFinder.processASTDoWhileNode(ASTDoWhileNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTDoWhileNode(ASTDoWhileNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTDoWhileNode(ASTDoWhileNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTDoWhileNode(ASTDoWhileNode node,
DavaFlowSet<E> input) |
DavaFlowSet |
UnreachableCodeFinder.processASTForLoopNode(ASTForLoopNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTForLoopNode(ASTForLoopNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTForLoopNode(ASTForLoopNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTForLoopNode(ASTForLoopNode node,
DavaFlowSet<E> input) |
DavaFlowSet |
CP.processASTIfElseNode(ASTIfElseNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTIfElseNode(ASTIfElseNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTIfElseNode(ASTIfElseNode node,
DavaFlowSet input) |
DavaFlowSet |
CP.processASTIfElseNode(ASTIfElseNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTIfElseNode(ASTIfElseNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTIfElseNode(ASTIfElseNode node,
DavaFlowSet<E> input) |
DavaFlowSet |
CP.processASTIfNode(ASTIfNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTIfNode(ASTIfNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTIfNode(ASTIfNode node,
DavaFlowSet input) |
DavaFlowSet |
CP.processASTIfNode(ASTIfNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTIfNode(ASTIfNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTIfNode(ASTIfNode node,
DavaFlowSet<E> input) |
DavaFlowSet |
UnreachableCodeFinder.processASTLabeledBlockNode(ASTLabeledBlockNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTLabeledBlockNode(ASTLabeledBlockNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTLabeledBlockNode(ASTLabeledBlockNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTLabeledBlockNode(ASTLabeledBlockNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTMethodNode(ASTMethodNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTMethodNode(ASTMethodNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTNode(ASTNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTNode(ASTNode node,
DavaFlowSet<E> input) |
DavaFlowSet |
UnreachableCodeFinder.processASTStatementSequenceNode(ASTStatementSequenceNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTStatementSequenceNode(ASTStatementSequenceNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTStatementSequenceNode(ASTStatementSequenceNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTStatementSequenceNode(ASTStatementSequenceNode node,
DavaFlowSet<E> input) |
DavaFlowSet |
UnreachableCodeFinder.processASTSwitchNode(ASTSwitchNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTSwitchNode(ASTSwitchNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTSwitchNode(ASTSwitchNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTSwitchNode(ASTSwitchNode node,
DavaFlowSet<E> input) |
DavaFlowSet |
UnreachableCodeFinder.processASTSynchronizedBlockNode(ASTSynchronizedBlockNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTSynchronizedBlockNode(ASTSynchronizedBlockNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTSynchronizedBlockNode(ASTSynchronizedBlockNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTSynchronizedBlockNode(ASTSynchronizedBlockNode node,
DavaFlowSet<E> input) |
DavaFlowSet |
UnreachableCodeFinder.processASTTryNode(ASTTryNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTTryNode(ASTTryNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTTryNode(ASTTryNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTTryNode(ASTTryNode node,
DavaFlowSet<E> input) |
DavaFlowSet |
UnreachableCodeFinder.processASTUnconditionalLoopNode(ASTUnconditionalLoopNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTUnconditionalLoopNode(ASTUnconditionalLoopNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTUnconditionalLoopNode(ASTUnconditionalLoopNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTUnconditionalLoopNode(ASTUnconditionalLoopNode node,
DavaFlowSet<E> input) |
DavaFlowSet |
UnreachableCodeFinder.processASTWhileNode(ASTWhileNode node,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processASTWhileNode(ASTWhileNode node,
DavaFlowSet input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTWhileNode(ASTWhileNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processASTWhileNode(ASTWhileNode node,
DavaFlowSet<E> input) |
DavaFlowSet<E> |
StructuredAnalysis.processCondition(ASTCondition cond,
DavaFlowSet<E> input)
This implementation breaks down the aggregated condition to the terminal
conditions which all have type ASTUnaryBinaryCondition.
|
DavaFlowSet<E> |
StructuredAnalysis.processCondition(ASTCondition cond,
DavaFlowSet<E> input)
This implementation breaks down the aggregated condition to the terminal
conditions which all have type ASTUnaryBinaryCondition.
|
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.
|
DavaFlowSet |
CP.processStatement(Stmt s,
DavaFlowSet input) |
DavaFlowSet |
MustMayInitialize.processStatement(Stmt s,
DavaFlowSet inSet) |
DavaFlowSet |
ReachingCopies.processStatement(Stmt s,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processStatement(Stmt s,
DavaFlowSet input) |
DavaFlowSet |
MustMayInitialize.processStatement(Stmt s,
DavaFlowSet inSet) |
DavaFlowSet |
UnreachableCodeFinder.processStatement(Stmt s,
DavaFlowSet input) |
DavaFlowSet |
CP.processStatement(Stmt s,
DavaFlowSet input) |
DavaFlowSet |
ReachingCopies.processStatement(Stmt s,
DavaFlowSet input) |
abstract DavaFlowSet<E> |
StructuredAnalysis.processStatement(Stmt s,
DavaFlowSet<E> input)
Specific stmts within AST Constructs are processed through this method.
|
abstract DavaFlowSet<E> |
StructuredAnalysis.processStatement(Stmt s,
DavaFlowSet<E> input)
Specific stmts within AST Constructs are processed through this method.
|
DavaFlowSet<Stmt> |
ReachingDefs.processStatement(Stmt s,
DavaFlowSet<Stmt> inSet) |
DavaFlowSet<Stmt> |
ReachingDefs.processStatement(Stmt s,
DavaFlowSet<Stmt> inSet) |
DavaFlowSet |
CP.processSwitchKey(Value key,
DavaFlowSet input) |
DavaFlowSet |
MustMayInitialize.processSwitchKey(Value key,
DavaFlowSet input) |
DavaFlowSet |
ReachingCopies.processSwitchKey(Value key,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processSwitchKey(Value key,
DavaFlowSet input) |
DavaFlowSet |
MustMayInitialize.processSwitchKey(Value key,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processSwitchKey(Value key,
DavaFlowSet input) |
DavaFlowSet |
CP.processSwitchKey(Value key,
DavaFlowSet input) |
DavaFlowSet |
ReachingCopies.processSwitchKey(Value key,
DavaFlowSet input) |
abstract DavaFlowSet<E> |
StructuredAnalysis.processSwitchKey(Value key,
DavaFlowSet<E> input)
Deal with the key in the switch construct
|
abstract DavaFlowSet<E> |
StructuredAnalysis.processSwitchKey(Value key,
DavaFlowSet<E> input)
Deal with the key in the switch construct
|
DavaFlowSet<Stmt> |
ReachingDefs.processSwitchKey(Value key,
DavaFlowSet<Stmt> inSet) |
DavaFlowSet<Stmt> |
ReachingDefs.processSwitchKey(Value key,
DavaFlowSet<Stmt> inSet) |
DavaFlowSet |
CP.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
MustMayInitialize.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
ReachingCopies.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
MustMayInitialize.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
CP.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
ReachingCopies.processSynchronizedLocal(Local local,
DavaFlowSet input) |
abstract DavaFlowSet<E> |
StructuredAnalysis.processSynchronizedLocal(Local local,
DavaFlowSet<E> input)
To deal with the local used for synch blocks
|
abstract DavaFlowSet<E> |
StructuredAnalysis.processSynchronizedLocal(Local local,
DavaFlowSet<E> input)
To deal with the local used for synch blocks
|
DavaFlowSet<Stmt> |
ReachingDefs.processSynchronizedLocal(Local local,
DavaFlowSet<Stmt> inSet) |
DavaFlowSet<Stmt> |
ReachingDefs.processSynchronizedLocal(Local local,
DavaFlowSet<Stmt> inSet) |
DavaFlowSet |
CP.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet input) |
DavaFlowSet |
MustMayInitialize.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet input) |
DavaFlowSet |
ReachingCopies.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet input) |
DavaFlowSet |
MustMayInitialize.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet input) |
DavaFlowSet |
CP.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet input) |
DavaFlowSet |
ReachingCopies.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet input) |
abstract DavaFlowSet<E> |
StructuredAnalysis.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet<E> input)
To have maximum flexibility in analyzing conditions the analysis API
breaks down the aggregated conditions to simple unary or binary
conditions user defined code can then deal with each condition
separately.
|
abstract DavaFlowSet<E> |
StructuredAnalysis.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet<E> input)
To have maximum flexibility in analyzing conditions the analysis API
breaks down the aggregated conditions to simple unary or binary
conditions user defined code can then deal with each condition
separately.
|
DavaFlowSet<Stmt> |
ReachingDefs.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet<Stmt> inSet) |
DavaFlowSet<Stmt> |
ReachingDefs.processUnaryBinaryCondition(ASTUnaryBinaryCondition cond,
DavaFlowSet<Stmt> inSet) |
Modifier and Type | Method and Description |
---|---|
DavaFlowSet<E> |
StructuredAnalysis.mergeExplicitAndImplicit(String label,
DavaFlowSet<E> output,
List<DavaFlowSet<E>> explicitSet,
List<DavaFlowSet<E>> implicitSet) |
DavaFlowSet<E> |
StructuredAnalysis.mergeExplicitAndImplicit(String label,
DavaFlowSet<E> output,
List<DavaFlowSet<E>> explicitSet,
List<DavaFlowSet<E>> implicitSet) |
DavaFlowSet<E> |
StructuredAnalysis.mergeExplicitAndImplicit(String label,
DavaFlowSet<E> output,
List<DavaFlowSet<E>> explicitSet,
List<DavaFlowSet<E>> implicitSet) |
DavaFlowSet<E> |
StructuredAnalysis.mergeExplicitAndImplicit(String label,
DavaFlowSet<E> output,
List<DavaFlowSet<E>> explicitSet,
List<DavaFlowSet<E>> implicitSet) |
Constructor and Description |
---|
DavaFlowSet(DavaFlowSet<T> other) |
DavaFlowSet(DavaFlowSet<T> other) |