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 Types | |
---|---|
using | EdgeListTy = SetVector< EdgeType * > |
using | iterator = typename EdgeListTy::iterator |
using | const_iterator = typename EdgeListTy::const_iterator |
Public Member Functions | |
---|---|
DGNode (EdgeType &E) | |
Create a node with a single outgoing edge E. | |
DGNode ()=default | |
DGNode (const DGNode< NodeType, EdgeType > &N) | |
DGNode (DGNode< NodeType, EdgeType > &&N) | |
DGNode< NodeType, EdgeType > & | operator= (const DGNode< NodeType, EdgeType > &N) |
DGNode< NodeType, EdgeType > & | operator= (const DGNode< NodeType, EdgeType > &&N) |
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. | |
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/4]
template<class NodeType , class EdgeType >
llvm::DGNode< NodeType, EdgeType >::DGNode ( EdgeType & E) | inlineexplicit |
---|
◆ DGNode() [2/4]
template<class NodeType , class EdgeType >
◆ DGNode() [3/4]
template<class NodeType , class EdgeType >
◆ DGNode() [4/4]
template<class NodeType , class EdgeType >
◆ addEdge()
template<class NodeType , class EdgeType >
◆ 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 >
◆ 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 >
◆ isEqualTo()
template<class NodeType , class EdgeType >
◆ operator=() [1/2]
template<class NodeType , class EdgeType >
◆ operator=() [2/2]
template<class NodeType , class EdgeType >
◆ removeEdge()
template<class NodeType , class EdgeType >
void llvm::DGNode< NodeType, EdgeType >::removeEdge ( EdgeType & E) | inline |
---|
◆ 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 97 of file DirectedGraph.h.
◆ Edges
template<class NodeType , class EdgeType >
Definition at line 165 of file DirectedGraph.h.
Referenced by llvm::DGNode< NodeType, EdgeType >::addEdge(), llvm::DGNode< NodeType, EdgeType >::back(), llvm::DGNode< NodeType, EdgeType >::begin(), llvm::DGNode< NodeType, EdgeType >::clear(), llvm::DGNode< NodeType, EdgeType >::DGNode(), llvm::DGNode< NodeType, EdgeType >::end(), llvm::DGNode< NodeType, EdgeType >::findEdgesTo(), llvm::DGNode< NodeType, EdgeType >::findEdgeTo(), llvm::DGNode< NodeType, EdgeType >::front(), llvm::DGNode< NodeType, EdgeType >::getEdges(), llvm::DGNode< NodeType, EdgeType >::hasEdgeTo(), llvm::DGNode< NodeType, EdgeType >::operator=(), and llvm::DGNode< NodeType, EdgeType >::removeEdge().
The documentation for this class was generated from the following file:
- include/llvm/ADT/DirectedGraph.h