.TH "std::_Deque_iterator< _Tp, _Ref, _Ptr >" 3cxx "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME std::_Deque_iterator< _Tp, _Ref, _Ptr > \- A deque::iterator\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .SS "Public Types" .in +1c .ti -1c .RI "\fBtypedef\fP __ptr_to< _Tp > \fB_Elt_pointer\fP" .br .ti -1c .RI "\fBtypedef\fP __ptr_to< _Elt_pointer > \fB_Map_pointer\fP" .br .ti -1c .RI "\fBtypedef\fP \fB_Deque_iterator\fP \fB_Self\fP" .br .ti -1c .RI "\fBtypedef\fP \fB__iter\fP< \fBconst\fP _Tp > \fBconst_iterator\fP" .br .ti -1c .RI "\fBtypedef\fP \fBptrdiff_t\fP \fBdifference_type\fP" .br .ti -1c .RI "\fBtypedef\fP \fB__iter\fP< _Tp > \fBiterator\fP" .br .ti -1c .RI "\fBtypedef\fP \fBstd::random_access_iterator_tag\fP \fBiterator_category\fP" .br .ti -1c .RI "\fBtypedef\fP _Ptr \fBpointer\fP" .br .ti -1c .RI "\fBtypedef\fP \fB_Ref\fP \fBreference\fP" .br .ti -1c .RI "\fBtypedef\fP size_t \fBsize_type\fP" .br .ti -1c .RI "\fBtypedef\fP _Tp \fBvalue_type\fP" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fB_Deque_iterator\fP (_Elt_pointer __x, _Map_pointer \fB__y\fP) \fBnoexcept\fP" .br .ti -1c .RI "\fB_Deque_iterator\fP (\fBconst\fP \fB_Deque_iterator\fP &__x) \fBnoexcept\fP" .br .ti -1c .RI "template<\fBtypename\fP _Iter , \fBtypename\fP = _Require, is_same<_Iter, iterator>>> \fB_Deque_iterator\fP (\fBconst\fP _Iter &__x) \fBnoexcept\fP" .br .ti -1c .RI "\fBiterator\fP \fB_M_const_cast\fP () \fBconst\fP \fBnoexcept\fP" .br .ti -1c .RI "\fBvoid\fP \fB_M_set_node\fP (_Map_pointer \fB__new_node\fP) \fBnoexcept\fP" .br .ti -1c .RI "\fBreference\fP \fBoperator*\fP () \fBconst\fP \fBnoexcept\fP" .br .ti -1c .RI "\fB_Self\fP \fBoperator+\fP (\fBdifference_type\fP __n) \fBconst\fP \fBnoexcept\fP" .br .ti -1c .RI "\fB_Self\fP & \fBoperator++\fP () \fBnoexcept\fP" .br .ti -1c .RI "\fB_Self\fP \fBoperator++\fP (int) \fBnoexcept\fP" .br .ti -1c .RI "\fB_Self\fP & \fBoperator+=\fP (\fBdifference_type\fP __n) \fBnoexcept\fP" .br .ti -1c .RI "\fB_Self\fP \fBoperator\-\fP (\fBdifference_type\fP __n) \fBconst\fP \fBnoexcept\fP" .br .ti -1c .RI "\fB_Self\fP & \fBoperator\-\-\fP () \fBnoexcept\fP" .br .ti -1c .RI "\fB_Self\fP \fBoperator\-\-\fP (int) \fBnoexcept\fP" .br .ti -1c .RI "\fB_Self\fP & \fBoperator\-=\fP (\fBdifference_type\fP __n) \fBnoexcept\fP" .br .ti -1c .RI "pointer \fBoperator\->\fP () \fBconst\fP \fBnoexcept\fP" .br .ti -1c .RI "\fB_Deque_iterator\fP & \fBoperator=\fP (\fBconst\fP \fB_Deque_iterator\fP &)=\fBdefault\fP" .br .ti -1c .RI "\fBreference\fP \fBoperator[]\fP (\fBdifference_type\fP __n) \fBconst\fP \fBnoexcept\fP" .br .in -1c .SS "Static Public Member Functions" .in +1c .ti -1c .RI "\fBstatic\fP size_t \fB_S_buffer_size\fP () \fBnoexcept\fP" .br .in -1c .SS "Public Attributes" .in +1c .ti -1c .RI "_Elt_pointer \fB_M_cur\fP" .br .ti -1c .RI "_Elt_pointer \fB_M_first\fP" .br .ti -1c .RI "_Elt_pointer \fB_M_last\fP" .br .ti -1c .RI "_Map_pointer \fB_M_node\fP" .br .in -1c .SH "Detailed Description" .PP .SS "template<\fBtypename\fP _Tp, \fBtypename\fP \fB_Ref\fP, \fBtypename\fP _Ptr> .br struct std::_Deque_iterator< _Tp, _Ref, _Ptr >"A deque::iterator\&. Quite a bit of intelligence here\&. Much of the functionality of deque is actually passed off to this class\&. A deque holds two of these internally, marking its valid range\&. Access to elements is done as offsets of either of those two, relying on operator overloading in this class\&. .PP All the functions are op overloads except for _M_set_node\&. .PP Definition at line \fB110\fP of file \fBstl_deque\&.h\fP\&. .SH "Member Typedef Documentation" .PP .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP __ptr_to<_Tp> \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_Elt_pointer" .PP Definition at line \fB126\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP __ptr_to<_Elt_pointer> \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_Map_pointer" .PP Definition at line \fB127\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP \fB_Deque_iterator\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_Self" .PP Definition at line \fB139\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP \fB__iter\fP<\fBconst\fP _Tp> \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::const_iterator" .PP Definition at line \fB125\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP \fBptrdiff_t\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::difference_type" .PP Definition at line \fB138\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP \fB__iter\fP<_Tp> \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::iterator" .PP Definition at line \fB124\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP \fBstd::random_access_iterator_tag\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::iterator_category" .PP Definition at line \fB133\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP _Ptr \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::pointer" .PP Definition at line \fB135\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP \fB_Ref\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::reference" .PP Definition at line \fB136\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP size_t \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::size_type" .PP Definition at line \fB137\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBtypedef\fP _Tp \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::value_type" .PP Definition at line \fB134\fP of file \fBstl_deque\&.h\fP\&. .SH "Constructor & Destructor Documentation" .PP .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_Deque_iterator (_Elt_pointer __x, _Map_pointer __y)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB146\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_Deque_iterator ()\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB150\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > template<\fBtypename\fP _Iter , \fBtypename\fP = _Require, is_same<_Iter, iterator>>> \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_Deque_iterator (\fBconst\fP _Iter & __x)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB163\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_Deque_iterator (\fBconst\fP \fB_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr > & __x)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB167\fP of file \fBstl_deque\&.h\fP\&. .SH "Member Function Documentation" .PP .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBiterator\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_M_const_cast () const\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB175\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBvoid\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_M_set_node (_Map_pointer __new_node)\fC [inline]\fP, \fC [noexcept]\fP" Prepares to traverse new_node\&. Sets everything except _M_cur, which should therefore be set by the caller immediately afterwards, based on _M_first and _M_last\&. .PP Definition at line \fB273\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBstatic\fP size_t \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_S_buffer_size ()\fC [inline]\fP, \fC [static]\fP, \fC [noexcept]\fP" .PP Definition at line \fB130\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBreference\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator* () const\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB179\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fB_Self\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator+ (\fBdifference_type\fP __n) const\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB246\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fB_Self\fP & \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator++ ()\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB187\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fB_Self\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator++ (int)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB199\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fB_Self\fP & \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator+= (\fBdifference_type\fP __n)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB227\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fB_Self\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator\- (\fBdifference_type\fP __n) const\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB257\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fB_Self\fP & \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator\-\- ()\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB207\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fB_Self\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator\-\- (int)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB219\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fB_Self\fP & \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator\-= (\fBdifference_type\fP __n)\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB253\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > pointer \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator\-> () const\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB183\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > \fBreference\fP \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::operator[] (\fBdifference_type\fP __n) const\fC [inline]\fP, \fC [noexcept]\fP" .PP Definition at line \fB264\fP of file \fBstl_deque\&.h\fP\&. .SH "Member Data Documentation" .PP .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > _Elt_pointer \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_M_cur" .PP Definition at line \fB141\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > _Elt_pointer \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_M_first" .PP Definition at line \fB142\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > _Elt_pointer \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_M_last" .PP Definition at line \fB143\fP of file \fBstl_deque\&.h\fP\&. .SS "template<\fBtypename\fP _Tp , \fBtypename\fP \fB_Ref\fP , \fBtypename\fP _Ptr > _Map_pointer \fBstd::_Deque_iterator\fP< _Tp, \fB_Ref\fP, _Ptr >::_M_node" .PP Definition at line \fB144\fP of file \fBstl_deque\&.h\fP\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.