LLVM 22.0.0git
llvm::po_iterator< GraphT, SetType, ExtStorage, GT > Class Template Reference

#include "llvm/ADT/PostOrderIterator.h"

Inheritance diagram for llvm::po_iterator< GraphT, SetType, ExtStorage, GT >:
[legend]

Public Types

using iterator_category
using value_type = typename GT::NodeRef
using difference_type = std::ptrdiff_t
using pointer = value_type *
using reference = const value_type &

Public Member Functions

bool operator== (const po_iterator &x) const
bool operator!= (const po_iterator &x) const
reference operator* () const
NodeRef operator-> () const
po_iteratoroperator++ ()
po_iterator operator++ (int)
Public Member Functions inherited from llvm::po_iterator_storage< SetType, External >
template<typename NodeRef>
bool insertEdge (std::optional< NodeRef > From, NodeRef To)
template<typename NodeRef>
void finishPostorder (NodeRef BB)

Static Public Member Functions

static po_iterator begin (const GraphT &G)
static po_iterator end (const GraphT &G)
static po_iterator begin (const GraphT &G, SetType &S)
static po_iterator end (const GraphT &G, SetType &S)

Detailed Description

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
class llvm::po_iterator< GraphT, SetType, ExtStorage, GT >

Definition at line 97 of file PostOrderIterator.h.

Member Typedef Documentation

◆ difference_type

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
using llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::difference_type = std::ptrdiff_t

Definition at line 104 of file PostOrderIterator.h.

◆ iterator_category

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
using llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::iterator_category
Initial value:
std::conditional_t<ExtStorage, std::input_iterator_tag,
std::forward_iterator_tag>

Definition at line 100 of file PostOrderIterator.h.

◆ pointer

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
using llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::pointer = value_type *

Definition at line 105 of file PostOrderIterator.h.

◆ reference

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
using llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::reference = const value_type &

Definition at line 106 of file PostOrderIterator.h.

◆ value_type

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
using llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::value_type = typename GT::NodeRef

Definition at line 103 of file PostOrderIterator.h.

Member Function Documentation

◆ begin() [1/2]

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
po_iterator llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::begin ( const GraphT & G)
inlinestatic

◆ begin() [2/2]

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
po_iterator llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::begin ( const GraphT & G,
SetType & S )
inlinestatic

Definition at line 157 of file PostOrderIterator.h.

◆ end() [1/2]

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
po_iterator llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::end ( const GraphT & G)
inlinestatic

◆ end() [2/2]

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
po_iterator llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::end ( const GraphT & G,
SetType & S )
inlinestatic

Definition at line 160 of file PostOrderIterator.h.

◆ operator!=()

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
bool llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::operator!= ( const po_iterator< GraphT, SetType, ExtStorage, GT > & x) const
inline

Definition at line 165 of file PostOrderIterator.h.

◆ operator*()

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
reference llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::operator* ( ) const
inline

Definition at line 167 of file PostOrderIterator.h.

◆ operator++() [1/2]

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
po_iterator & llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::operator++ ( )
inline

Definition at line 175 of file PostOrderIterator.h.

◆ operator++() [2/2]

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
po_iterator llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::operator++ ( int )
inline

Definition at line 183 of file PostOrderIterator.h.

◆ operator->()

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
NodeRef llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::operator-> ( ) const
inline

Definition at line 173 of file PostOrderIterator.h.

◆ operator==()

template<class GraphT, class SetType = SmallPtrSet<typename GraphTraits<GraphT>::NodeRef, 8>, bool ExtStorage = false, class GT = GraphTraits<GraphT>>
bool llvm::po_iterator< GraphT, SetType, ExtStorage, GT >::operator== ( const po_iterator< GraphT, SetType, ExtStorage, GT > & x) const
inline

Definition at line 162 of file PostOrderIterator.h.


The documentation for this class was generated from the following file: