LLVM  6.0.0svn
Public Types | Public Member Functions | List of all members
llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::VertexView< isConst > Class Template Reference

A class for ranging over the vertices in the graph. More...

#include "llvm/XRay/Graph.h"

Public Types

using iterator = typename std::conditional< isConst, ConstVertexIterator, VertexIterator >::type
 
using const_iterator = ConstVertexIterator
 
using GraphT = typename std::conditional< isConst, const Graph, Graph >::type
 

Public Member Functions

iterator begin ()
 
iterator end ()
 
const_iterator cbegin () const
 
const_iterator cend () const
 
const_iterator begin () const
 
const_iterator end () const
 
size_type size () const
 
bool empty () const
 
 VertexView (GraphT &_G)
 

Detailed Description

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

A class for ranging over the vertices in the graph.

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 274 of file Graph.h.

Member Typedef Documentation

◆ const_iterator

template<typename VertexAttribute , typename EdgeAttribute , typename VI = int32_t>
template<bool isConst>
using llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::VertexView< isConst >::const_iterator = ConstVertexIterator

Definition at line 278 of file Graph.h.

◆ GraphT

template<typename VertexAttribute , typename EdgeAttribute , typename VI = int32_t>
template<bool isConst>
using llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::VertexView< isConst >::GraphT = typename std::conditional<isConst, const Graph, Graph>::type

Definition at line 279 of file Graph.h.

◆ iterator

template<typename VertexAttribute , typename EdgeAttribute , typename VI = int32_t>
template<bool isConst>
using llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::VertexView< isConst >::iterator = typename std::conditional<isConst, ConstVertexIterator, VertexIterator>::type

Definition at line 277 of file Graph.h.

Constructor & Destructor Documentation

◆ VertexView()

template<typename VertexAttribute , typename EdgeAttribute , typename VI = int32_t>
template<bool isConst>
llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::VertexView< isConst >::VertexView ( GraphT _G)
inline

Definition at line 293 of file Graph.h.

Member Function Documentation

◆ begin() [1/2]

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

Definition at line 285 of file Graph.h.

◆ begin() [2/2]

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

Definition at line 289 of file Graph.h.

◆ cbegin()

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

Definition at line 287 of file Graph.h.

◆ cend()

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

Definition at line 288 of file Graph.h.

◆ empty()

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

Definition at line 292 of file Graph.h.

◆ end() [1/2]

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

Definition at line 286 of file Graph.h.

◆ end() [2/2]

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

Definition at line 290 of file Graph.h.

◆ size()

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

Definition at line 291 of file Graph.h.


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