LLVM  6.0.0svn
Public Types | Public Member Functions | Friends | List of all members
llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy > Class Template Reference

Our iterators are iterators over the collection of objects that share a key. More...

#include "llvm/ADT/SparseMultiSet.h"

Inheritance diagram for llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >:
Inheritance graph
[legend]
Collaboration diagram for llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >:
Collaboration graph
[legend]

Public Types

using super = std::iterator< std::bidirectional_iterator_tag, ValueT >
 
using value_type = typename super::value_type
 
using difference_type = typename super::difference_type
 
using pointer = typename super::pointer
 
using reference = typename super::reference
 

Public Member Functions

reference operator* () const
 
pointer operator-> () const
 
bool operator== (const iterator_base &RHS) const
 Comparison operators. More...
 
bool operator!= (const iterator_base &RHS) const
 
iterator_baseoperator-- ()
 Increment and decrement operators. More...
 
iterator_baseoperator++ ()
 
iterator_base operator-- (int)
 
iterator_base operator++ (int)
 

Friends

class SparseMultiSet
 

Detailed Description

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy>
class llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >

Our iterators are iterators over the collection of objects that share a key.

Definition at line 221 of file SparseMultiSet.h.

Member Typedef Documentation

◆ difference_type

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
using llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::difference_type = typename super::difference_type

Definition at line 253 of file SparseMultiSet.h.

◆ pointer

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
using llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::pointer = typename super::pointer

Definition at line 254 of file SparseMultiSet.h.

◆ reference

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
using llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::reference = typename super::reference

Definition at line 255 of file SparseMultiSet.h.

◆ super

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
using llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::super = std::iterator<std::bidirectional_iterator_tag, ValueT>

Definition at line 251 of file SparseMultiSet.h.

◆ value_type

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
using llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::value_type = typename super::value_type

Definition at line 252 of file SparseMultiSet.h.

Member Function Documentation

◆ operator!=()

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
bool llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator!= ( const iterator_base< SMSPtrTy > &  RHS) const
inline

Definition at line 277 of file SparseMultiSet.h.

References llvm::operator==().

◆ operator*()

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
reference llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator* ( ) const
inline

Definition at line 257 of file SparseMultiSet.h.

References assert().

◆ operator++() [1/2]

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
iterator_base& llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator++ ( )
inline

Definition at line 295 of file SparseMultiSet.h.

References assert().

◆ operator++() [2/2]

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
iterator_base llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator++ ( int  )
inline

◆ operator--() [1/2]

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
iterator_base& llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator-- ( )
inline

Increment and decrement operators.

Definition at line 282 of file SparseMultiSet.h.

References assert().

◆ operator--() [2/2]

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
iterator_base llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator-- ( int  )
inline

◆ operator->()

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
pointer llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator-> ( ) const
inline

Definition at line 263 of file SparseMultiSet.h.

References llvm::operator*().

◆ operator==()

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
bool llvm::SparseMultiSet< ValueT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy >::operator== ( const iterator_base< SMSPtrTy > &  RHS) const
inline

Comparison operators.

Definition at line 266 of file SparseMultiSet.h.

References assert().

Friends And Related Function Documentation

◆ SparseMultiSet

template<typename ValueT, typename KeyFunctorT = identity<unsigned>, typename SparseT = uint8_t>
template<typename SMSPtrTy >
friend class SparseMultiSet
friend

Definition at line 223 of file SparseMultiSet.h.


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