ReactOS 0.4.16-dev-197-g92996da
_Deque_iterator< _Tp, _Traits > Struct Template Reference

#include <_deque.h>

Inheritance diagram for _Deque_iterator< _Tp, _Traits >:
Collaboration diagram for _Deque_iterator< _Tp, _Traits >:

Public Types

typedef random_access_iterator_tag iterator_category
 
typedef _Tp value_type
 
typedef _Traits::reference reference
 
typedef _Traits::pointer pointer
 
typedef size_t size_type
 
typedef ptrdiff_t difference_type
 
typedef value_type ** _Map_pointer
 
typedef _Deque_iterator_base< _Tp > _Base
 
typedef _Deque_iterator< _Tp, _Traits > _Self
 
typedef _Traits::_NonConstTraits _NonConstTraits
 
typedef _Deque_iterator< _Tp, _NonConstTraitsiterator
 
typedef _Traits::_ConstTraits _ConstTraits
 
typedef _Deque_iterator< _Tp, _ConstTraitsconst_iterator
 
- Public Types inherited from _Deque_iterator_base< _Tp >
typedef random_access_iterator_tag iterator_category
 
typedef _Tp value_type
 
typedef size_t size_type
 
typedef ptrdiff_t difference_type
 
typedef value_type ** _Map_pointer
 
typedef _Deque_iterator_base< _Tp > _Self
 

Public Member Functions

 _Deque_iterator (value_type *__x, _Map_pointer __y)
 
 _Deque_iterator ()
 
 _Deque_iterator (const iterator &__x)
 
reference operator* () const
 
_STLP_DEFINE_ARROW_OPERATOR difference_type operator- (const const_iterator &__x) const
 
_Selfoperator++ ()
 
_Self operator++ (int)
 
_Selfoperator-- ()
 
_Self operator-- (int)
 
_Selfoperator+= (difference_type __n)
 
_Self operator+ (difference_type __n) const
 
_Selfoperator-= (difference_type __n)
 
_Self operator- (difference_type __n) const
 
reference operator[] (difference_type __n) const
 
- Public Member Functions inherited from _Deque_iterator_base< _Tp >
 _Deque_iterator_base (value_type *__x, _Map_pointer __y)
 
 _Deque_iterator_base ()
 
difference_type _M_subtract (const _Self &__x) const
 
void _M_increment ()
 
void _M_decrement ()
 
void _M_advance (difference_type __n)
 
void _M_set_node (_Map_pointer __new_node)
 

Additional Inherited Members

- Static Public Member Functions inherited from _Deque_iterator_base< _Tp >
static size_t _S_buffer_size ()
 
- Public Attributes inherited from _Deque_iterator_base< _Tp >
value_type_M_cur
 
value_type_M_first
 
value_type_M_last
 
_Map_pointer _M_node
 

Detailed Description

template<class _Tp, class _Traits>
struct _Deque_iterator< _Tp, _Traits >

Definition at line 162 of file _deque.h.

Member Typedef Documentation

◆ _Base

template<class _Tp , class _Traits >
typedef _Deque_iterator_base< _Tp > _Deque_iterator< _Tp, _Traits >::_Base

Definition at line 171 of file _deque.h.

◆ _ConstTraits

template<class _Tp , class _Traits >
typedef _Traits::_ConstTraits _Deque_iterator< _Tp, _Traits >::_ConstTraits

Definition at line 175 of file _deque.h.

◆ _Map_pointer

template<class _Tp , class _Traits >
typedef value_type** _Deque_iterator< _Tp, _Traits >::_Map_pointer

Definition at line 169 of file _deque.h.

◆ _NonConstTraits

template<class _Tp , class _Traits >
typedef _Traits::_NonConstTraits _Deque_iterator< _Tp, _Traits >::_NonConstTraits

Definition at line 173 of file _deque.h.

◆ _Self

template<class _Tp , class _Traits >
typedef _Deque_iterator<_Tp, _Traits> _Deque_iterator< _Tp, _Traits >::_Self

Definition at line 172 of file _deque.h.

◆ const_iterator

template<class _Tp , class _Traits >
typedef _Deque_iterator<_Tp, _ConstTraits> _Deque_iterator< _Tp, _Traits >::const_iterator

Definition at line 176 of file _deque.h.

◆ difference_type

template<class _Tp , class _Traits >
typedef ptrdiff_t _Deque_iterator< _Tp, _Traits >::difference_type

Definition at line 168 of file _deque.h.

◆ iterator

template<class _Tp , class _Traits >
typedef _Deque_iterator<_Tp, _NonConstTraits> _Deque_iterator< _Tp, _Traits >::iterator

Definition at line 174 of file _deque.h.

◆ iterator_category

template<class _Tp , class _Traits >
typedef random_access_iterator_tag _Deque_iterator< _Tp, _Traits >::iterator_category

Definition at line 163 of file _deque.h.

◆ pointer

template<class _Tp , class _Traits >
typedef _Traits::pointer _Deque_iterator< _Tp, _Traits >::pointer

Definition at line 166 of file _deque.h.

◆ reference

template<class _Tp , class _Traits >
typedef _Traits::reference _Deque_iterator< _Tp, _Traits >::reference

Definition at line 165 of file _deque.h.

◆ size_type

template<class _Tp , class _Traits >
typedef size_t _Deque_iterator< _Tp, _Traits >::size_type

Definition at line 167 of file _deque.h.

◆ value_type

template<class _Tp , class _Traits >
typedef _Tp _Deque_iterator< _Tp, _Traits >::value_type

Definition at line 164 of file _deque.h.

Constructor & Destructor Documentation

◆ _Deque_iterator() [1/3]

template<class _Tp , class _Traits >
_Deque_iterator< _Tp, _Traits >::_Deque_iterator ( value_type __x,
_Map_pointer  __y 
)
inline

Definition at line 178 of file _deque.h.

◆ _Deque_iterator() [2/3]

template<class _Tp , class _Traits >
_Deque_iterator< _Tp, _Traits >::_Deque_iterator ( )
inline

Definition at line 181 of file _deque.h.

181{}

◆ _Deque_iterator() [3/3]

template<class _Tp , class _Traits >
_Deque_iterator< _Tp, _Traits >::_Deque_iterator ( const iterator __x)
inline

Definition at line 183 of file _deque.h.

Member Function Documentation

◆ operator*()

template<class _Tp , class _Traits >
reference _Deque_iterator< _Tp, _Traits >::operator* ( ) const
inline

Definition at line 186 of file _deque.h.

186 {
187 return *this->_M_cur;
188 }
value_type * _M_cur
Definition: _deque.h:101

◆ operator+()

template<class _Tp , class _Traits >
_Self _Deque_iterator< _Tp, _Traits >::operator+ ( difference_type  __n) const
inline

Definition at line 209 of file _deque.h.

209 {
210 _Self __tmp = *this;
211 return __tmp += __n;
212 }
return __n
Definition: _algo.h:75
_Deque_iterator< _Tp, _Traits > _Self
Definition: _deque.h:172

◆ operator++() [1/2]

template<class _Tp , class _Traits >
_Self & _Deque_iterator< _Tp, _Traits >::operator++ ( )
inline

Definition at line 194 of file _deque.h.

194{ this->_M_increment(); return *this; }
void _M_increment()
Definition: _deque.h:124

◆ operator++() [2/2]

template<class _Tp , class _Traits >
_Self _Deque_iterator< _Tp, _Traits >::operator++ ( int  )
inline

Definition at line 195 of file _deque.h.

195 {
196 _Self __tmp = *this;
197 ++*this;
198 return __tmp;
199 }

◆ operator+=()

template<class _Tp , class _Traits >
_Self & _Deque_iterator< _Tp, _Traits >::operator+= ( difference_type  __n)
inline

Definition at line 208 of file _deque.h.

208{ this->_M_advance(__n); return *this; }
void _M_advance(difference_type __n)
Definition: _deque.h:139

◆ operator-() [1/2]

template<class _Tp , class _Traits >
_STLP_DEFINE_ARROW_OPERATOR difference_type _Deque_iterator< _Tp, _Traits >::operator- ( const const_iterator __x) const
inline

Definition at line 192 of file _deque.h.

192{ return this->_M_subtract(__x); }
difference_type _M_subtract(const _Self &__x) const
Definition: _deque.h:119

◆ operator-() [2/2]

template<class _Tp , class _Traits >
_Self _Deque_iterator< _Tp, _Traits >::operator- ( difference_type  __n) const
inline

Definition at line 215 of file _deque.h.

215 {
216 _Self __tmp = *this;
217 return __tmp -= __n;
218 }

◆ operator--() [1/2]

template<class _Tp , class _Traits >
_Self & _Deque_iterator< _Tp, _Traits >::operator-- ( )
inline

Definition at line 201 of file _deque.h.

201{ this->_M_decrement(); return *this; }
void _M_decrement()
Definition: _deque.h:131

◆ operator--() [2/2]

template<class _Tp , class _Traits >
_Self _Deque_iterator< _Tp, _Traits >::operator-- ( int  )
inline

Definition at line 202 of file _deque.h.

202 {
203 _Self __tmp = *this;
204 --*this;
205 return __tmp;
206 }

◆ operator-=()

template<class _Tp , class _Traits >
_Self & _Deque_iterator< _Tp, _Traits >::operator-= ( difference_type  __n)
inline

Definition at line 214 of file _deque.h.

214{ return *this += -__n; }

◆ operator[]()

template<class _Tp , class _Traits >
reference _Deque_iterator< _Tp, _Traits >::operator[] ( difference_type  __n) const
inline

Definition at line 220 of file _deque.h.

220{ return *(*this + __n); }

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