libstdc++
std::__debug::deque< _Tp, _Allocator > Class Template Reference
Inheritance diagram for std::__debug::deque< _Tp, _Allocator >:
[legend]

Public Types

typedef _Allocator allocator_type
 
typedef __gnu_debug::_Safe_iterator< _Base_const_iterator, dequeconst_iterator
 
typedef _Base::const_pointer const_pointer
 
typedef _Base::const_reference const_reference
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef _Base::difference_type difference_type
 
typedef __gnu_debug::_Safe_iterator< _Base_iterator, dequeiterator
 
typedef _Base::pointer pointer
 
typedef _Base::reference reference
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef _Base::size_type size_type
 
typedef _Tp value_type
 

Public Member Functions

template<class _InputIterator , typename = std::_RequireInputIter<_InputIterator>>
 deque (_InputIterator __first, _InputIterator __last, const _Allocator &__a=_Allocator())
 
 deque (const _Allocator &__a)
 
 deque (const _Base &__x)
 
 deque (const deque &)=default
 
 deque (const deque &__d, const _Allocator &__a)
 
 deque (deque &&)=default
 
 deque (deque &&__d, const _Allocator &__a)
 
 deque (initializer_list< value_type > __l, const allocator_type &__a=allocator_type())
 
 deque (size_type __n, const _Allocator &__a=_Allocator())
 
 deque (size_type __n, const _Tp &__value, const _Allocator &__a=_Allocator())
 
const _Base_M_base () const noexcept
 
_Base_M_base () noexcept
 
void _M_swap (_Safe_container &__x) noexcept
 
template<class _InputIterator , typename = std::_RequireInputIter<_InputIterator>>
void assign (_InputIterator __first, _InputIterator __last)
 
void assign (initializer_list< value_type > __l)
 
void assign (size_type __n, const _Tp &__t)
 
const_reference back () const noexcept
 
reference back () noexcept
 
const_iterator begin () const noexcept
 
iterator begin () noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 
void clear () noexcept
 
const_reverse_iterator crbegin () const noexcept
 
const_reverse_iterator crend () const noexcept
 
template<typename... _Args>
iterator emplace (const_iterator __position, _Args &&... __args)
 
template<typename... _Args>
void emplace_back (_Args &&... __args)
 
template<typename... _Args>
void emplace_front (_Args &&... __args)
 
const_iterator end () const noexcept
 
iterator end () noexcept
 
iterator erase (const_iterator __first, const_iterator __last)
 
iterator erase (const_iterator __position)
 
const_reference front () const noexcept
 
reference front () noexcept
 
template<class _InputIterator , typename = std::_RequireInputIter<_InputIterator>>
iterator insert (const_iterator __position, _InputIterator __first, _InputIterator __last)
 
iterator insert (const_iterator __position, _Tp &&__x)
 
iterator insert (const_iterator __position, const _Tp &__x)
 
iterator insert (const_iterator __position, initializer_list< value_type > __l)
 
iterator insert (const_iterator __position, size_type __n, const _Tp &__x)
 
dequeoperator= (const deque &)=default
 
dequeoperator= (deque &&)=default
 
dequeoperator= (initializer_list< value_type > __l)
 
const_reference operator[] (size_type __n) const noexcept
 
reference operator[] (size_type __n) noexcept
 
void pop_back () noexcept
 
void pop_front () noexcept
 
void push_back (_Tp &&__x)
 
void push_back (const _Tp &__x)
 
void push_front (_Tp &&__x)
 
void push_front (const _Tp &__x)
 
const_reverse_iterator rbegin () const noexcept
 
reverse_iterator rbegin () noexcept
 
const_reverse_iterator rend () const noexcept
 
reverse_iterator rend () noexcept
 
void resize (size_type __sz)
 
void resize (size_type __sz, const _Tp &__c)
 
void shrink_to_fit () noexcept
 
void swap (deque &__x) noexcept(/*conditional */)
 

Protected Member Functions

_Safe_container & _M_safe () noexcept
 

Detailed Description

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
class std::__debug::deque< _Tp, _Allocator >

Class std::deque with safety/checking/debug instrumentation.

Definition at line 45 of file debug/deque.

Member Typedef Documentation

◆ allocator_type

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef _Allocator std::__debug::deque< _Tp, _Allocator >::allocator_type

Definition at line 72 of file debug/deque.

◆ const_iterator

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef __gnu_debug::_Safe_iterator<_Base_const_iterator, deque> std::__debug::deque< _Tp, _Allocator >::const_iterator

Definition at line 66 of file debug/deque.

◆ const_pointer

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef _Base::const_pointer std::__debug::deque< _Tp, _Allocator >::const_pointer

Definition at line 74 of file debug/deque.

◆ const_reference

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef _Base::const_reference std::__debug::deque< _Tp, _Allocator >::const_reference

Definition at line 61 of file debug/deque.

◆ const_reverse_iterator

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef std::reverse_iterator<const_iterator> std::__debug::deque< _Tp, _Allocator >::const_reverse_iterator

Definition at line 76 of file debug/deque.

◆ difference_type

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef _Base::difference_type std::__debug::deque< _Tp, _Allocator >::difference_type

Definition at line 69 of file debug/deque.

◆ iterator

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef __gnu_debug::_Safe_iterator<_Base_iterator, deque> std::__debug::deque< _Tp, _Allocator >::iterator

Definition at line 64 of file debug/deque.

◆ pointer

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef _Base::pointer std::__debug::deque< _Tp, _Allocator >::pointer

Definition at line 73 of file debug/deque.

◆ reference

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef _Base::reference std::__debug::deque< _Tp, _Allocator >::reference

Definition at line 60 of file debug/deque.

◆ reverse_iterator

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef std::reverse_iterator<iterator> std::__debug::deque< _Tp, _Allocator >::reverse_iterator

Definition at line 75 of file debug/deque.

◆ size_type

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef _Base::size_type std::__debug::deque< _Tp, _Allocator >::size_type

Definition at line 68 of file debug/deque.

◆ value_type

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
typedef _Tp std::__debug::deque< _Tp, _Allocator >::value_type

Definition at line 71 of file debug/deque.

Constructor & Destructor Documentation

◆ deque() [1/8]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
std::__debug::deque< _Tp, _Allocator >::deque ( const deque< _Tp, _Allocator > &  __d,
const _Allocator &  __a 
)
inline

Definition at line 93 of file debug/deque.

◆ deque() [2/8]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
std::__debug::deque< _Tp, _Allocator >::deque ( deque< _Tp, _Allocator > &&  __d,
const _Allocator &  __a 
)
inline

Definition at line 96 of file debug/deque.

◆ deque() [3/8]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
std::__debug::deque< _Tp, _Allocator >::deque ( initializer_list< value_type >  __l,
const allocator_type &  __a = allocator_type() 
)
inline

Definition at line 99 of file debug/deque.

◆ deque() [4/8]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
std::__debug::deque< _Tp, _Allocator >::deque ( const _Allocator &  __a)
inlineexplicit

Definition at line 107 of file debug/deque.

◆ deque() [5/8]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
std::__debug::deque< _Tp, _Allocator >::deque ( size_type  __n,
const _Allocator &  __a = _Allocator() 
)
inlineexplicit

Definition at line 112 of file debug/deque.

◆ deque() [6/8]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
std::__debug::deque< _Tp, _Allocator >::deque ( size_type  __n,
const _Tp &  __value,
const _Allocator &  __a = _Allocator() 
)
inline

Definition at line 115 of file debug/deque.

◆ deque() [7/8]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
template<class _InputIterator , typename = std::_RequireInputIter<_InputIterator>>
std::__debug::deque< _Tp, _Allocator >::deque ( _InputIterator  __first,
_InputIterator  __last,
const _Allocator &  __a = _Allocator() 
)
inline

Definition at line 131 of file debug/deque.

◆ deque() [8/8]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
std::__debug::deque< _Tp, _Allocator >::deque ( const _Base __x)
inline

Definition at line 138 of file debug/deque.

Member Function Documentation

◆ _M_base() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const _Base & std::__debug::deque< _Tp, _Allocator >::_M_base ( ) const
inlinenoexcept

Definition at line 624 of file debug/deque.

◆ _M_base() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
_Base & std::__debug::deque< _Tp, _Allocator >::_M_base ( )
inlinenoexcept

Definition at line 621 of file debug/deque.

◆ _M_safe()

template<typename _SafeContainer , typename _Alloc , template< typename > class _SafeBase, bool _IsCxx11AllocatorAware = true>
_Safe_container & __gnu_debug::_Safe_container< _SafeContainer, _Alloc, _SafeBase, _IsCxx11AllocatorAware >::_M_safe ( )
inlineprotectednoexceptinherited

Definition at line 52 of file safe_container.h.

◆ _M_swap()

template<typename _SafeContainer , typename _Alloc , template< typename > class _SafeBase, bool _IsCxx11AllocatorAware = true>
void __gnu_debug::_Safe_container< _SafeContainer, _Alloc, _SafeBase, _IsCxx11AllocatorAware >::_M_swap ( _Safe_container< _SafeContainer, _Alloc, _SafeBase, _IsCxx11AllocatorAware > &  __x)
inlinenoexceptinherited

Definition at line 104 of file safe_container.h.

◆ assign() [1/3]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
template<class _InputIterator , typename = std::_RequireInputIter<_InputIterator>>
void std::__debug::deque< _Tp, _Allocator >::assign ( _InputIterator  __first,
_InputIterator  __last 
)
inline

Definition at line 172 of file debug/deque.

◆ assign() [2/3]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::assign ( initializer_list< value_type >  __l)
inline

Definition at line 194 of file debug/deque.

◆ assign() [3/3]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::assign ( size_type  __n,
const _Tp &  __t 
)
inline

Definition at line 186 of file debug/deque.

◆ back() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_reference std::__debug::deque< _Tp, _Allocator >::back ( ) const
inlinenoexcept

Definition at line 358 of file debug/deque.

◆ back() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
reference std::__debug::deque< _Tp, _Allocator >::back ( )
inlinenoexcept

Definition at line 351 of file debug/deque.

◆ begin() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_iterator std::__debug::deque< _Tp, _Allocator >::begin ( ) const
inlinenoexcept

Definition at line 209 of file debug/deque.

◆ begin() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
iterator std::__debug::deque< _Tp, _Allocator >::begin ( )
inlinenoexcept

Definition at line 205 of file debug/deque.

◆ cbegin()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_iterator std::__debug::deque< _Tp, _Allocator >::cbegin ( ) const
inlinenoexcept

Definition at line 238 of file debug/deque.

◆ cend()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_iterator std::__debug::deque< _Tp, _Allocator >::cend ( ) const
inlinenoexcept

Definition at line 242 of file debug/deque.

◆ clear()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::clear ( )
inlinenoexcept

Definition at line 614 of file debug/deque.

◆ crbegin()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_reverse_iterator std::__debug::deque< _Tp, _Allocator >::crbegin ( ) const
inlinenoexcept

Definition at line 246 of file debug/deque.

◆ crend()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_reverse_iterator std::__debug::deque< _Tp, _Allocator >::crend ( ) const
inlinenoexcept

Definition at line 250 of file debug/deque.

◆ emplace()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
template<typename... _Args>
iterator std::__debug::deque< _Tp, _Allocator >::emplace ( const_iterator  __position,
_Args &&...  __args 
)
inline

Definition at line 420 of file debug/deque.

◆ emplace_back()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
template<typename... _Args>
void std::__debug::deque< _Tp, _Allocator >::emplace_back ( _Args &&...  __args)
inline

Definition at line 409 of file debug/deque.

◆ emplace_front()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
template<typename... _Args>
void std::__debug::deque< _Tp, _Allocator >::emplace_front ( _Args &&...  __args)
inline

Definition at line 394 of file debug/deque.

◆ end() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_iterator std::__debug::deque< _Tp, _Allocator >::end ( ) const
inlinenoexcept

Definition at line 217 of file debug/deque.

◆ end() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
iterator std::__debug::deque< _Tp, _Allocator >::end ( )
inlinenoexcept

Definition at line 213 of file debug/deque.

◆ erase() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
iterator std::__debug::deque< _Tp, _Allocator >::erase ( const_iterator  __first,
const_iterator  __last 
)
inline

Definition at line 561 of file debug/deque.

◆ erase() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
iterator std::__debug::deque< _Tp, _Allocator >::erase ( const_iterator  __position)
inline

Definition at line 535 of file debug/deque.

◆ front() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_reference std::__debug::deque< _Tp, _Allocator >::front ( ) const
inlinenoexcept

Definition at line 344 of file debug/deque.

◆ front() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
reference std::__debug::deque< _Tp, _Allocator >::front ( )
inlinenoexcept

Definition at line 337 of file debug/deque.

◆ insert() [1/5]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
template<class _InputIterator , typename = std::_RequireInputIter<_InputIterator>>
iterator std::__debug::deque< _Tp, _Allocator >::insert ( const_iterator  __position,
_InputIterator  __first,
_InputIterator  __last 
)
inline

Definition at line 481 of file debug/deque.

◆ insert() [2/5]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
iterator std::__debug::deque< _Tp, _Allocator >::insert ( const_iterator  __position,
_Tp &&  __x 
)
inline

Definition at line 445 of file debug/deque.

◆ insert() [3/5]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
iterator std::__debug::deque< _Tp, _Allocator >::insert ( const_iterator  __position,
const _Tp &  __x 
)
inline

Definition at line 432 of file debug/deque.

◆ insert() [4/5]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
iterator std::__debug::deque< _Tp, _Allocator >::insert ( const_iterator  __position,
initializer_list< value_type >  __l 
)
inline

Definition at line 449 of file debug/deque.

◆ insert() [5/5]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
iterator std::__debug::deque< _Tp, _Allocator >::insert ( const_iterator  __position,
size_type  __n,
const _Tp &  __x 
)
inline

Definition at line 460 of file debug/deque.

◆ operator=()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
deque & std::__debug::deque< _Tp, _Allocator >::operator= ( initializer_list< value_type >  __l)
inline

Definition at line 157 of file debug/deque.

◆ operator[]() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_reference std::__debug::deque< _Tp, _Allocator >::operator[] ( size_type  __n) const
inlinenoexcept

Definition at line 328 of file debug/deque.

◆ operator[]() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
reference std::__debug::deque< _Tp, _Allocator >::operator[] ( size_type  __n)
inlinenoexcept

Definition at line 321 of file debug/deque.

◆ pop_back()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::pop_back ( )
inlinenoexcept

Definition at line 526 of file debug/deque.

◆ pop_front()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::pop_front ( )
inlinenoexcept

Definition at line 518 of file debug/deque.

◆ push_back() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::push_back ( _Tp &&  __x)
inline

Definition at line 385 of file debug/deque.

◆ push_back() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::push_back ( const _Tp &  __x)
inline

Definition at line 373 of file debug/deque.

◆ push_front() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::push_front ( _Tp &&  __x)
inline

Definition at line 381 of file debug/deque.

◆ push_front() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::push_front ( const _Tp &  __x)
inline

Definition at line 366 of file debug/deque.

◆ rbegin() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_reverse_iterator std::__debug::deque< _Tp, _Allocator >::rbegin ( ) const
inlinenoexcept

Definition at line 225 of file debug/deque.

◆ rbegin() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
reverse_iterator std::__debug::deque< _Tp, _Allocator >::rbegin ( )
inlinenoexcept

Definition at line 221 of file debug/deque.

◆ rend() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
const_reverse_iterator std::__debug::deque< _Tp, _Allocator >::rend ( ) const
inlinenoexcept

Definition at line 233 of file debug/deque.

◆ rend() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
reverse_iterator std::__debug::deque< _Tp, _Allocator >::rend ( )
inlinenoexcept

Definition at line 229 of file debug/deque.

◆ resize() [1/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::resize ( size_type  __sz)
inline

Definition at line 269 of file debug/deque.

◆ resize() [2/2]

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::resize ( size_type  __sz,
const _Tp &  __c 
)
inline

Definition at line 282 of file debug/deque.

◆ shrink_to_fit()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::shrink_to_fit ( )
inlinenoexcept

Definition at line 310 of file debug/deque.

◆ swap()

template<typename _Tp , typename _Allocator = std::allocator<_Tp>>
void std::__debug::deque< _Tp, _Allocator >::swap ( deque< _Tp, _Allocator > &  __x)
inlinenoexcept

Definition at line 606 of file debug/deque.


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