XII Release 0.1.0
Loading...
Searching...
No Matches
xiiMapBaseIteratorBase< KeyType, ValueType, Comparer, REVERSE > Struct Template Reference

Forward Iterator to iterate over all elements in sorted order. More...

#include <Map.h>

Inheritance diagram for xiiMapBaseIteratorBase< KeyType, ValueType, Comparer, REVERSE >:
[legend]

Classes

struct  Pointer
 

Public Types

using iterator_category = std::forward_iterator_tag
 
using value_type = xiiMapBaseIteratorBase<KeyType, ValueType, Comparer, REVERSE>
 
using difference_type = std::ptrdiff_t
 
using pointer = xiiMapBaseIteratorBase<KeyType, ValueType, Comparer, REVERSE>*
 
using reference = xiiMapBaseIteratorBase<KeyType, ValueType, Comparer, REVERSE>&
 
- Public Types inherited from xiiMapBaseConstIteratorBase< KeyType, ValueType, Comparer, REVERSE >
using iterator_category = std::forward_iterator_tag
 
using value_type = xiiMapBaseConstIteratorBase<KeyType, ValueType, Comparer, false>
 
using difference_type = std::ptrdiff_t
 
using pointer = xiiMapBaseConstIteratorBase<KeyType, ValueType, Comparer, false>*
 
using reference = xiiMapBaseConstIteratorBase<KeyType, ValueType, Comparer, false>&
 

Public Member Functions

 XII_DECLARE_POD_TYPE ()
 
XII_ALWAYS_INLINE xiiMapBaseIteratorBase ()
 Constructs an invalid iterator.
 
XII_FORCE_INLINE ValueType & Value ()
 Returns the 'value' of the element that this iterator points to.
 
XII_FORCE_INLINE ValueType & Value () const
 Returns the 'value' of the element that this iterator points to.
 
XII_ALWAYS_INLINE xiiMapBaseIteratorBaseoperator* ()
 Returns '*this' to enable foreach.
 
XII_ALWAYS_INLINE Pointer operator-> () const
 
template<std::size_t Index>
std::tuple_element_t< Index, xiiMapBaseIteratorBase > & get ()
 
template<std::size_t Index>
std::tuple_element_t< Index, xiiMapBaseIteratorBase > & get () const
 
- Public Member Functions inherited from xiiMapBaseConstIteratorBase< KeyType, ValueType, Comparer, REVERSE >
 XII_DECLARE_POD_TYPE ()
 
XII_ALWAYS_INLINE xiiMapBaseConstIteratorBase ()
 Constructs an invalid iterator.
 
XII_ALWAYS_INLINE bool IsValid () const
 Checks whether this iterator points to a valid element.
 
XII_ALWAYS_INLINE bool operator== (const xiiMapBaseConstIteratorBase &it2) const
 Checks whether the two iterators point to the same element.
 
XII_FORCE_INLINE const KeyType & Key () const
 Returns the 'key' of the element that this iterator points to.
 
XII_FORCE_INLINE const ValueType & Value () const
 Returns the 'value' of the element that this iterator points to.
 
XII_ALWAYS_INLINE xiiMapBaseConstIteratorBaseoperator* ()
 Returns '*this' to enable foreach.
 
void Next ()
 Advances the iterator to the next element in the map. The iterator will not be valid anymore, if the end is reached.
 
void Prev ()
 Advances the iterator to the previous element in the map. The iterator will not be valid anymore, if the end is reached.
 
XII_ALWAYS_INLINE void operator++ ()
 Shorthand for 'Next'.
 
XII_ALWAYS_INLINE void operator-- ()
 Shorthand for 'Prev'.
 
XII_ALWAYS_INLINE Pointer operator-> () const
 
template<std::size_t Index>
std::tuple_element_t< Index, xiiMapBaseConstIteratorBase > & get () const
 

Friends

class xiiMapBase< KeyType, ValueType, Comparer >
 

Additional Inherited Members

- Protected Member Functions inherited from xiiMapBaseConstIteratorBase< KeyType, ValueType, Comparer, REVERSE >
void Advance (const xiiInt32 dir0, const xiiInt32 dir1)
 
XII_ALWAYS_INLINE xiiMapBaseConstIteratorBase (typename xiiMapBase< KeyType, ValueType, Comparer >::Node *pInit)
 
- Protected Attributes inherited from xiiMapBaseConstIteratorBase< KeyType, ValueType, Comparer, REVERSE >
xiiMapBase< KeyType, ValueType, Comparer >::Node * m_pElement
 

Detailed Description

template<typename KeyType, typename ValueType, typename Comparer, bool REVERSE>
struct xiiMapBaseIteratorBase< KeyType, ValueType, Comparer, REVERSE >

Forward Iterator to iterate over all elements in sorted order.


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