LLVM: llvm::DGNode< NodeType, EdgeType > Class Template Reference (original) (raw)
Represent a node in the directed graph. More...
#include "[llvm/ADT/DirectedGraph.h](DirectedGraph%5F8h%5Fsource.html)"
| Public Member Functions | |
|---|---|
| DGNode (EdgeType &E) | |
| Create a node with a single outgoing edge E. | |
| DGNode ()=default | |
| const_iterator | begin () const |
| const_iterator | end () const |
| iterator | begin () |
| iterator | end () |
| const EdgeType & | front () const |
| EdgeType & | front () |
| const EdgeType & | back () const |
| EdgeType & | back () |
| bool | findEdgesTo (const NodeType &N, SmallVectorImpl< EdgeType * > &EL) const |
| Collect in EL, all the edges from this node to N. | |
| bool | addEdge (EdgeType &E) |
| Add the given edge E to this node, if it doesn't exist already. | |
| void | removeEdge (EdgeType &E) |
| Remove the given edge E from this node, if it exists. | |
| bool | hasEdgeTo (const NodeType &N) const |
| Test whether there is an edge that goes from this node to N. | |
| const EdgeListTy & | getEdges () const |
| Retrieve the outgoing edges for the node. | |
| EdgeListTy & | getEdges () |
| void | clear () |
| Clear the outgoing edges. |
| Protected Member Functions | |
|---|---|
| bool | isEqualTo (const NodeType &N) const |
| NodeType & | getDerived () |
| const NodeType & | getDerived () const |
| const_iterator | findEdgeTo (const NodeType &N) const |
| Find an edge to N. |
| Protected Attributes | |
|---|---|
| EdgeListTy | Edges |
| Friends | |
|---|---|
| bool | operator== (const NodeType &M, const NodeType &N) |
| Static polymorphism: delegate implementation (via isEqualTo) to the derived class. | |
| bool | operator!= (const NodeType &M, const NodeType &N) |
template<class NodeType, class EdgeType>
class llvm::DGNode< NodeType, EdgeType >
Represent a node in the directed graph.
The node has a (possibly empty) list of outgoing edges.
Definition at line 73 of file DirectedGraph.h.
◆ const_iterator
template<class NodeType, class EdgeType>
◆ EdgeListTy
template<class NodeType, class EdgeType>
◆ iterator
template<class NodeType, class EdgeType>
◆ DGNode() [1/2]
template<class NodeType, class EdgeType>
| llvm::DGNode< NodeType, EdgeType >::DGNode ( EdgeType & E) | inlineexplicit |
|---|
Create a node with a single outgoing edge E.
Definition at line 80 of file DirectedGraph.h.
◆ DGNode() [2/2]
template<class NodeType, class EdgeType>
◆ addEdge()
template<class NodeType, class EdgeType>
Add the given edge E to this node, if it doesn't exist already.
Returns true if the edge is added and false otherwise.
Definition at line 115 of file DirectedGraph.h.
◆ back() [1/2]
template<class NodeType, class EdgeType>
| EdgeType & llvm::DGNode< NodeType, EdgeType >::back ( ) | inline |
|---|
◆ back() [2/2]
template<class NodeType, class EdgeType>
◆ begin() [1/2]
template<class NodeType, class EdgeType>
◆ begin() [2/2]
template<class NodeType, class EdgeType>
◆ clear()
template<class NodeType, class EdgeType>
◆ end() [1/2]
template<class NodeType, class EdgeType>
◆ end() [2/2]
template<class NodeType, class EdgeType>
◆ findEdgesTo()
template<class NodeType, class EdgeType>
Collect in EL, all the edges from this node to N.
Return true if at least one edge was found, and false otherwise. Note that this implementation allows more than one edge to connect a given pair of nodes.
Definition at line 105 of file DirectedGraph.h.
◆ findEdgeTo()
template<class NodeType, class EdgeType>
◆ front() [1/2]
template<class NodeType, class EdgeType>
| EdgeType & llvm::DGNode< NodeType, EdgeType >::front ( ) | inline |
|---|
◆ front() [2/2]
template<class NodeType, class EdgeType>
◆ getDerived() [1/2]
template<class NodeType, class EdgeType>
| NodeType & llvm::DGNode< NodeType, EdgeType >::getDerived ( ) | inlineprotected |
|---|
◆ getDerived() [2/2]
template<class NodeType, class EdgeType>
| const NodeType & llvm::DGNode< NodeType, EdgeType >::getDerived ( ) const | inlineprotected |
|---|
◆ getEdges() [1/2]
template<class NodeType, class EdgeType>
◆ getEdges() [2/2]
template<class NodeType, class EdgeType>
◆ hasEdgeTo()
template<class NodeType, class EdgeType>
Test whether there is an edge that goes from this node to N.
Definition at line 121 of file DirectedGraph.h.
◆ isEqualTo()
template<class NodeType, class EdgeType>
◆ removeEdge()
template<class NodeType, class EdgeType>
| void llvm::DGNode< NodeType, EdgeType >::removeEdge ( EdgeType & E) | inline |
|---|
Remove the given edge E from this node, if it exists.
Definition at line 118 of file DirectedGraph.h.
◆ operator!=
template<class NodeType, class EdgeType>
◆ operator==
template<class NodeType, class EdgeType>
Static polymorphism: delegate implementation (via isEqualTo) to the derived class.
Definition at line 85 of file DirectedGraph.h.
◆ Edges
template<class NodeType, class EdgeType>
The documentation for this class was generated from the following file:
- include/llvm/ADT/DirectedGraph.h