mn::container::basic_array_iterator< T > Class Template Reference

Helper class for array iterators. More...

#include <mn_array.hpp>

Public Types

using iterator_category = bidirectional_iterator_tag
 
using value_type = T
 
using pointer = T *
 
using reference = T &
 
using const_reference = const T &
 
using difference_type = mn::ptrdiff_t
 
using size_type = mn::size_t
 
using self_type = basic_array_iterator< T >
 

Public Member Functions

 basic_array_iterator (pointer _valuePtr, uint32_t pos) noexcept
 
 basic_array_iterator (const self_type &other) noexcept
 
 basic_array_iterator (const self_type &&other) noexcept
 
bool operator!= (const self_type &other) const
 
bool operator== (const self_type &other) const
 
self_typeoperator++ ()
 
self_typeoperator-- ()
 
reference operator* ()
 
const_reference operator* () const
 
self_typeoperator= (const self_type &other) noexcept
 
reference operator[] (size_type index)
 
const_reference operator[] (size_type index) const
 

Private Attributes

pointer m_valuePtr
 
uint32_t m_iPosition
 

Detailed Description

template<typename T>
class mn::container::basic_array_iterator< T >

Helper class for array iterators.

Member Typedef Documentation

◆ const_reference

template<typename T >
using mn::container::basic_array_iterator< T >::const_reference = const T&

◆ difference_type

◆ iterator_category

◆ pointer

template<typename T >
using mn::container::basic_array_iterator< T >::pointer = T*

◆ reference

template<typename T >
using mn::container::basic_array_iterator< T >::reference = T&

◆ self_type

template<typename T >
using mn::container::basic_array_iterator< T >::self_type = basic_array_iterator<T>

◆ size_type

template<typename T >
using mn::container::basic_array_iterator< T >::size_type = mn::size_t

◆ value_type

template<typename T >
using mn::container::basic_array_iterator< T >::value_type = T

Constructor & Destructor Documentation

◆ basic_array_iterator() [1/3]

template<typename T >
mn::container::basic_array_iterator< T >::basic_array_iterator ( pointer  _valuePtr,
uint32_t  pos 
)
inlinenoexcept

◆ basic_array_iterator() [2/3]

template<typename T >
mn::container::basic_array_iterator< T >::basic_array_iterator ( const self_type other)
inlinenoexcept

◆ basic_array_iterator() [3/3]

template<typename T >
mn::container::basic_array_iterator< T >::basic_array_iterator ( const self_type &&  other)
inlinenoexcept

Member Function Documentation

◆ operator!=()

template<typename T >
bool mn::container::basic_array_iterator< T >::operator!= ( const self_type other) const
inline

◆ operator*() [1/2]

template<typename T >
reference mn::container::basic_array_iterator< T >::operator* ( )
inline

◆ operator*() [2/2]

template<typename T >
const_reference mn::container::basic_array_iterator< T >::operator* ( ) const
inline

◆ operator++()

template<typename T >
self_type& mn::container::basic_array_iterator< T >::operator++ ( )
inline

◆ operator--()

template<typename T >
self_type& mn::container::basic_array_iterator< T >::operator-- ( )
inline

◆ operator=()

template<typename T >
self_type& mn::container::basic_array_iterator< T >::operator= ( const self_type other)
inlinenoexcept

◆ operator==()

template<typename T >
bool mn::container::basic_array_iterator< T >::operator== ( const self_type other) const
inline

◆ operator[]() [1/2]

template<typename T >
reference mn::container::basic_array_iterator< T >::operator[] ( size_type  index)
inline

◆ operator[]() [2/2]

template<typename T >
const_reference mn::container::basic_array_iterator< T >::operator[] ( size_type  index) const
inline

Member Data Documentation

◆ m_iPosition

template<typename T >
uint32_t mn::container::basic_array_iterator< T >::m_iPosition
private

◆ m_valuePtr

template<typename T >
pointer mn::container::basic_array_iterator< T >::m_valuePtr
private

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