Interface NodeManager<T>
- Type Parameters:
T
- the type of nodes thisNodeManager
tracks.
- All Superinterfaces:
Iterable<T>
- All Known Subinterfaces:
CallGraph
,ControlFlowGraph<I,
,T> Graph<T>
,HeapGraph<T>
,IFlowGraph
,ISDG
,ISupergraph<T,
,P> LabeledGraph<T,
,U> MinimalCFG<T>
,NumberedGraph<T>
,NumberedLabeledGraph<T,
,I> NumberedNodeManager<T>
,OrderedMultiGraph<T>
,SerializableGraph<T>
- All Known Implementing Classes:
AbstractCFG
,AbstractDemandFlowGraph
,AbstractFlowGraph
,AbstractGraph
,AbstractInterproceduralCFG
,AbstractLabeledGraph
,AbstractNumberedGraph
,AbstractNumberedLabeledGraph
,AstCallGraph
,AstInducedCFG
,AstTranslator.AstCFG
,AstTranslator.IncipientCFG
,BackwardsSupergraph
,BasicCallGraph
,BasicGraph
,BasicHeapGraph
,BasicNodeManager
,BasicOrderedMultiGraph
,CHACallGraph
,CISDG
,ControlDependenceGraph
,CrossLanguageCallGraph
,DelegatingCFG
,DelegatingExplicitCallGraph
,DelegatingGraph
,DelegatingNumberedGraph
,DelegatingNumberedNodeManager
,DemandPointerFlowGraph
,DemandValueFlowGraph
,DexCFG
,EdgeFilteredNumberedGraph
,ExplicitCallGraph
,ExplodedControlFlowGraph
,ExplodedInterproceduralCFG
,ExtensionGraph
,HeapGraphImpl
,ICFGSupergraph
,InducedCFG
,InterproceduralCFG
,InvertedGraph
,InvertedNumberedGraph
,JSCallGraph
,JSInducedCFG
,MutableCFG
,PartialCallGraph
,PDG
,PrefixTransferGraph
,PrunedCallGraph
,PrunedCFG
,RandomGraph
,RandomGraph.IntegerRandomGraph
,SDG
,SelfLoopAddedGraph
,ShrikeCFG
,SimpleDemandPointerFlowGraph
,SlowNumberedNodeManager
,SlowSparseNumberedGraph
,SlowSparseNumberedLabeledGraph
,SparseNumberedGraph
,SSACFG
,UriPrefixTransferGraph
An object which tracks graph nodes.
This is effectively a stripped-down collection interface. We choose to avoid using the full
Collection
interface, so that it takes less code to implement a new NodeManager
.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
add a node to this graphboolean
containsNode
(@Nullable T n) int
iterator()
void
removeNode
(T n) remove a node from this graphstream()
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
iterator
-
stream
-
getNumberOfNodes
int getNumberOfNodes()- Returns:
- the number of nodes in this graph
-
addNode
add a node to this graph -
removeNode
remove a node from this graph- Throws:
UnsupportedOperationException
-
containsNode
- Returns:
- true iff the graph contains the specified node
-