LLVM 22.0.0git
llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut > Class Template Reference

A class for ranging over the incoming edges incident to a vertex. More...

#include "llvm/XRay/Graph.h"

Public Types

using iterator = NeighborEdgeIteratorT<isConst, isOut>
using const_iterator = NeighborEdgeIteratorT<true, isOut>
using GraphT = std::conditional_t<isConst, const Graph, Graph>
using InternalEdgeMapT

Public Member Functions

iterator begin ()
const_iterator cbegin () const
const_iterator begin () const
iterator end ()
const_iterator cend () const
const_iterator end () const
size_type size () const
bool empty () const
 InOutEdgeView (GraphT &G, VertexIdentifier A)

Detailed Description

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
class llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >

A class for ranging over the incoming edges incident to a vertex.

Like all views in this class it provides methods to get the beginning and past the range iterators for the range, as well as methods to determine the number of elements in the range and whether the range is empty.

Definition at line 198 of file Graph.h.

Member Typedef Documentation

◆ const_iterator

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
using llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::const_iterator = NeighborEdgeIteratorT<true, isOut>

Definition at line 201 of file Graph.h.

◆ GraphT

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
using llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::GraphT = std::conditional_t<isConst, const Graph, Graph>

Definition at line 202 of file Graph.h.

◆ InternalEdgeMapT

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
using llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::InternalEdgeMapT
Initial value:
std::conditional_t<isConst, const EdgeMapT, EdgeMapT>

Definition at line 203 of file Graph.h.

◆ iterator

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
using llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::iterator = NeighborEdgeIteratorT<isConst, isOut>

Definition at line 200 of file Graph.h.

Constructor & Destructor Documentation

◆ InOutEdgeView()

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::InOutEdgeView ( GraphT & G,
VertexIdentifier A )
inline

Definition at line 253 of file Graph.h.

References G.

Member Function Documentation

◆ begin() [1/2]

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
iterator llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::begin ( )
inline

Definition at line 212 of file Graph.h.

◆ begin() [2/2]

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
const_iterator llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::begin ( ) const
inline

Definition at line 226 of file Graph.h.

References cbegin().

◆ cbegin()

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
const_iterator llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::cbegin ( ) const
inline

Definition at line 219 of file Graph.h.

Referenced by begin().

◆ cend()

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
const_iterator llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::cend ( ) const
inline

Definition at line 234 of file Graph.h.

Referenced by end().

◆ empty()

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
bool llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::empty ( ) const
inline

Definition at line 251 of file Graph.h.

◆ end() [1/2]

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
iterator llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::end ( )
inline

Definition at line 228 of file Graph.h.

◆ end() [2/2]

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
const_iterator llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::end ( ) const
inline

Definition at line 241 of file Graph.h.

References cend().

◆ size()

template<typename VertexAttribute, typename EdgeAttribute, typename VI = int32_t>
template<bool isConst, bool isOut>
size_type llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::InOutEdgeView< isConst, isOut >::size ( ) const
inline

Definition at line 243 of file Graph.h.

References I.


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