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

A class for ranging over all the edges in the graph. More...

#include "llvm/XRay/Graph.h"

Public Types

using iterator = typename std::conditional< isConst, ConstEdgeIterator, EdgeIterator >::type
 
using const_iterator = ConstEdgeIterator
 
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
 
 EdgeView (GraphT &_G)
 

Detailed Description

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

A class for ranging over all the edges 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 311 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 >::EdgeView< isConst >::const_iterator = ConstEdgeIterator

Definition at line 315 of file Graph.h.

◆ GraphT

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

Definition at line 316 of file Graph.h.

◆ iterator

template<typename VertexAttribute , typename EdgeAttribute , typename VI = int32_t>
template<bool isConst>
using llvm::xray::Graph< VertexAttribute, EdgeAttribute, VI >::EdgeView< isConst >::iterator = typename std::conditional<isConst, ConstEdgeIterator, EdgeIterator>::type

Definition at line 314 of file Graph.h.

Constructor & Destructor Documentation

◆ EdgeView()

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

Definition at line 330 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 >::EdgeView< isConst >::begin ( )
inline

Definition at line 322 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 >::EdgeView< isConst >::begin ( ) const
inline

Definition at line 326 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 >::EdgeView< isConst >::cbegin ( ) const
inline

Definition at line 324 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 >::EdgeView< isConst >::cend ( ) const
inline

Definition at line 325 of file Graph.h.

◆ empty()

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

Definition at line 329 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 >::EdgeView< isConst >::end ( )
inline

Definition at line 323 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 >::EdgeView< isConst >::end ( ) const
inline

Definition at line 327 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 >::EdgeView< isConst >::size ( ) const
inline

Definition at line 328 of file Graph.h.


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