Interface NodeManager<T>
- Type Parameters:
T- the type of nodes thisNodeManagertracks.
- 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 TypeMethodDescriptionvoidadd a node to this graphbooleancontainsNode(@Nullable T n) intiterator()voidremoveNode(T n) remove a node from this graphstream()Methods inherited from interface 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
-