Interface MinimalCFG<T>
- All Superinterfaces:
EdgeManager<T>, Graph<T>, Iterable<T>, NodeManager<T>, NumberedEdgeManager<T>, NumberedGraph<T>, NumberedNodeManager<T>
- All Known Subinterfaces:
ControlFlowGraph<I,T>
- All Known Implementing Classes:
AbstractCFG, AstInducedCFG, AstTranslator.AstCFG, DelegatingCFG, DexCFG, ExplodedControlFlowGraph, InducedCFG, JSInducedCFG, MutableCFG, PrunedCFG, ShrikeCFG, SSACFG
-
Method Summary
Modifier and TypeMethodDescriptionentry()Return the entry basic block in the CFGexit()The order of blocks returned should be arbitrary but deterministic.The order of blocks returned must indicate the exception-handling scope.The order of blocks returned should be arbitrary but deterministic.The order of blocks returned should be arbitrary but deterministic.Methods inherited from interface EdgeManager
addEdge, getPredNodeCount, getPredNodes, getSuccNodeCount, getSuccNodes, hasEdge, removeAllIncidentEdges, removeEdge, removeIncomingEdges, removeOutgoingEdgesModifier and TypeMethodDescriptionvoidintReturn the number ofimmediate predecessornodes of ngetPredNodes(T n) Return anIteratorover the immediate predecessor nodes of nintReturn the number ofimmediate successornodes of this Node in the GraphgetSuccNodes(T n) Return an Iterator over the immediate successor nodes of nbooleanvoidremoveAllIncidentEdges(T node) voidremoveEdge(T src, T dst) voidremoveIncomingEdges(T node) voidremoveOutgoingEdges(T node) Methods inherited from interface Graph
removeNodeAndEdgesModifier and TypeMethodDescriptionvoidremove a node and all its incident edgesMethods inherited from interface Iterable
forEach, spliteratorMethods inherited from interface NodeManager
addNode, containsNode, getNumberOfNodes, iterator, removeNode, streamModifier and TypeMethodDescriptionvoidadd a node to this graphbooleancontainsNode(T n) intiterator()voidremoveNode(T n) remove a node from this graphstream()Methods inherited from interface NumberedEdgeManager
getPredNodeNumbers, getSuccNodeNumbersMethods inherited from interface NumberedNodeManager
getMaxNumber, getNode, getNumber, iterateNodes
-
Method Details
-
entry
T entry()Return the entry basic block in the CFG -
exit
T exit()- Returns:
- the synthetic exit block for the cfg
-
getExceptionalSuccessors
The order of blocks returned must indicate the exception-handling scope. So the first block is the first candidate catch block, and so on. With this invariant one can compute the exceptional control flow for a given exception type.- Returns:
- the basic blocks which may be reached from b via exceptional control flow
-
getNormalSuccessors
The order of blocks returned should be arbitrary but deterministic.- Returns:
- the basic blocks which may be reached from b via normal control flow
-
getExceptionalPredecessors
The order of blocks returned should be arbitrary but deterministic.- Returns:
- the basic blocks from which b may be reached via exceptional control flow
-
getNormalPredecessors
The order of blocks returned should be arbitrary but deterministic.- Returns:
- the basic blocks from which b may be reached via normal control flow
-