Inheritance diagram for __gnu_debug_def::deque< _Tp, _Allocator >:
Public Types | |
typedef _Base::reference | reference |
typedef _Base::const_reference | const_reference |
typedef __gnu_debug::_Safe_iterator< typename _Base::iterator, deque > | iterator |
typedef __gnu_debug::_Safe_iterator< typename _Base::const_iterator, deque > | const_iterator |
typedef _Base::size_type | size_type |
typedef _Base::difference_type | difference_type |
typedef _Tp | value_type |
typedef _Allocator | allocator_type |
typedef _Base::pointer | pointer |
typedef _Base::const_pointer | const_pointer |
typedef std::reverse_iterator< iterator > | reverse_iterator |
typedef std::reverse_iterator< const_iterator > | const_reverse_iterator |
Public Member Functions | |
deque (const _Allocator &__a=_Allocator()) | |
Default constructor creates no elements. | |
deque (size_type __n, const _Tp &__value=_Tp(), const _Allocator &__a=_Allocator()) | |
template<class _InputIterator> | |
deque (_InputIterator __first, _InputIterator __last, const _Allocator &__a=_Allocator()) | |
Builds a deque from a range. | |
deque (const deque< _Tp, _Allocator > &__x) | |
deque (const _Base &__x) | |
~deque () | |
deque< _Tp, _Allocator > & | operator= (const deque< _Tp, _Allocator > &__x) |
template<class _InputIterator> | |
void | assign (_InputIterator __first, _InputIterator __last) |
Assigns a range to a deque. | |
void | assign (size_type __n, const _Tp &__t) |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
reverse_iterator | rbegin () |
const_reverse_iterator | rbegin () const |
reverse_iterator | rend () |
const_reverse_iterator | rend () const |
void | resize (size_type __sz, _Tp __c=_Tp()) |
reference | operator[] (size_type __n) |
const_reference | operator[] (size_type __n) const |
reference | front () |
const_reference | front () const |
reference | back () |
const_reference | back () const |
void | push_front (const _Tp &__x) |
Add data to the front of the deque. | |
void | push_back (const _Tp &__x) |
Add data to the end of the deque. | |
iterator | insert (iterator __position, const _Tp &__x) |
void | insert (iterator __position, size_type __n, const _Tp &__x) |
template<class _InputIterator> | |
void | insert (iterator __position, _InputIterator __first, _InputIterator __last) |
void | pop_front () |
Removes first element. | |
void | pop_back () |
Removes last element. | |
iterator | erase (iterator __position) |
iterator | erase (iterator __first, iterator __last) |
void | swap (deque< _Tp, _Allocator > &__x) |
void | clear () |
_Base & | _M_base () |
const _Base & | _M_base () const |
Private Types | |
typedef _GLIBCXX_STD::deque< _Tp, _Allocator > | _Base |
typedef __gnu_debug::_Safe_sequence< deque > | _Safe_base |
Definition at line 41 of file debug/deque.
typedef _GLIBCXX_STD::deque<_Tp, _Allocator> __gnu_debug_def::deque< _Tp, _Allocator >::_Base [private] |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 45 of file debug/deque.
typedef __gnu_debug::_Safe_sequence<deque> __gnu_debug_def::deque< _Tp, _Allocator >::_Safe_base [private] |
Definition at line 46 of file debug/deque.
typedef _Allocator __gnu_debug_def::deque< _Tp, _Allocator >::allocator_type |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 61 of file debug/deque.
typedef __gnu_debug::_Safe_iterator<typename _Base::const_iterator,deque> __gnu_debug_def::deque< _Tp, _Allocator >::const_iterator |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 55 of file debug/deque.
typedef _Base::const_pointer __gnu_debug_def::deque< _Tp, _Allocator >::const_pointer |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 63 of file debug/deque.
typedef _Base::const_reference __gnu_debug_def::deque< _Tp, _Allocator >::const_reference |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 50 of file debug/deque.
typedef std::reverse_iterator<const_iterator> __gnu_debug_def::deque< _Tp, _Allocator >::const_reverse_iterator |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 65 of file debug/deque.
typedef _Base::difference_type __gnu_debug_def::deque< _Tp, _Allocator >::difference_type |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 58 of file debug/deque.
typedef __gnu_debug::_Safe_iterator<typename _Base::iterator,deque> __gnu_debug_def::deque< _Tp, _Allocator >::iterator |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 53 of file debug/deque.
typedef _Base::pointer __gnu_debug_def::deque< _Tp, _Allocator >::pointer |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 62 of file debug/deque.
typedef _Base::reference __gnu_debug_def::deque< _Tp, _Allocator >::reference |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 49 of file debug/deque.
typedef std::reverse_iterator<iterator> __gnu_debug_def::deque< _Tp, _Allocator >::reverse_iterator |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 64 of file debug/deque.
typedef _Base::size_type __gnu_debug_def::deque< _Tp, _Allocator >::size_type |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 57 of file debug/deque.
typedef _Tp __gnu_debug_def::deque< _Tp, _Allocator >::value_type |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 60 of file debug/deque.
__gnu_debug_def::deque< _Tp, _Allocator >::deque | ( | const _Allocator & | __a = _Allocator() |
) | [inline, explicit] |
Default constructor creates no elements.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 68 of file debug/deque.
__gnu_debug_def::deque< _Tp, _Allocator >::deque | ( | size_type | __n, | |
const _Tp & | __value = _Tp() , |
|||
const _Allocator & | __a = _Allocator() | |||
) | [inline, explicit] |
Definition at line 71 of file debug/deque.
__gnu_debug_def::deque< _Tp, _Allocator >::deque | ( | _InputIterator | __first, | |
_InputIterator | __last, | |||
const _Allocator & | __a = _Allocator() | |||
) | [inline] |
Builds a deque from a range.
first | An input iterator. | |
last | An input iterator. |
If the iterators are forward, bidirectional, or random-access, then this will call the elements' copy constructor N times (where N is distance(first,last)) and do no memory reallocation. But if only input iterators are used, then this will do at most 2N calls to the copy constructor, and logN memory reallocations.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 76 of file debug/deque.
__gnu_debug_def::deque< _Tp, _Allocator >::deque | ( | const deque< _Tp, _Allocator > & | __x | ) | [inline] |
Definition at line 81 of file debug/deque.
__gnu_debug_def::deque< _Tp, _Allocator >::deque | ( | const _Base & | __x | ) | [inline] |
Definition at line 83 of file debug/deque.
__gnu_debug_def::deque< _Tp, _Allocator >::~deque | ( | ) | [inline] |
The dtor only erases the elements, and note that if the elements themselves are pointers, the pointed-to memory is not touched in any way. Managing the pointer is the user's responsibilty.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 85 of file debug/deque.
const _Base& __gnu_debug_def::deque< _Tp, _Allocator >::_M_base | ( | ) | const [inline] |
Definition at line 343 of file debug/deque.
_Base& __gnu_debug_def::deque< _Tp, _Allocator >::_M_base | ( | ) | [inline] |
Definition at line 340 of file debug/deque.
Referenced by __gnu_debug_def::operator!=(), __gnu_debug_def::operator==(), __gnu_debug_def::operator>(), __gnu_debug_def::operator>=(), __gnu_debug_def::deque< _Tp, _Allocator >::operator[](), and __gnu_debug_def::deque< _Tp, _Allocator >::resize().
void __gnu_debug_def::deque< _Tp, _Allocator >::assign | ( | size_type | __n, | |
const _Tp & | __t | |||
) | [inline] |
Definition at line 105 of file debug/deque.
References __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::assign().
void __gnu_debug_def::deque< _Tp, _Allocator >::assign | ( | _InputIterator | __first, | |
_InputIterator | __last | |||
) | [inline] |
Assigns a range to a deque.
first | An input iterator. | |
last | An input iterator. |
Note that the assignment completely changes the deque and that the resulting deque's size is the same as the number of elements assigned. Old data may be lost.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 97 of file debug/deque.
References __glibcxx_check_valid_range, __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::assign().
const_reference __gnu_debug_def::deque< _Tp, _Allocator >::back | ( | ) | const [inline] |
Returns a read-only (constant) reference to the data at the last element of the deque.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 207 of file debug/deque.
References __glibcxx_check_nonempty, and _GLIBCXX_STD::deque< _Tp, _Allocator >::back().
reference __gnu_debug_def::deque< _Tp, _Allocator >::back | ( | ) | [inline] |
Returns a read/write reference to the data at the last element of the deque.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 200 of file debug/deque.
References __glibcxx_check_nonempty, and _GLIBCXX_STD::deque< _Tp, _Allocator >::back().
const_iterator __gnu_debug_def::deque< _Tp, _Allocator >::begin | ( | ) | const [inline] |
Returns a read-only (constant) iterator that points to the first element in the deque. Iteration is done in ordinary element order.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 119 of file debug/deque.
References _GLIBCXX_STD::deque< _Tp, _Allocator >::begin().
iterator __gnu_debug_def::deque< _Tp, _Allocator >::begin | ( | ) | [inline] |
Returns a read/write iterator that points to the first element in the deque. Iteration is done in ordinary element order.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 115 of file debug/deque.
References _GLIBCXX_STD::deque< _Tp, _Allocator >::begin().
Referenced by __gnu_debug_def::deque< _Tp, _Allocator >::erase(), __gnu_debug_def::deque< _Tp, _Allocator >::pop_front(), __gnu_debug_def::deque< _Tp, _Allocator >::rend(), and __gnu_debug_def::deque< _Tp, _Allocator >::resize().
void __gnu_debug_def::deque< _Tp, _Allocator >::clear | ( | ) | [inline] |
Erases all the elements. Note that this function only erases the elements, and that if the elements themselves are pointers, the pointed-to memory is not touched in any way. Managing the pointer is the user's responsibilty.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 333 of file debug/deque.
References __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::clear().
const_iterator __gnu_debug_def::deque< _Tp, _Allocator >::end | ( | ) | const [inline] |
Returns a read-only (constant) iterator that points one past the last element in the deque. Iteration is done in ordinary element order.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 127 of file debug/deque.
References _GLIBCXX_STD::deque< _Tp, _Allocator >::end().
iterator __gnu_debug_def::deque< _Tp, _Allocator >::end | ( | ) | [inline] |
Returns a read/write iterator that points one past the last element in the deque. Iteration is done in ordinary element order.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 123 of file debug/deque.
References _GLIBCXX_STD::deque< _Tp, _Allocator >::end().
Referenced by __gnu_debug_def::deque< _Tp, _Allocator >::erase(), __gnu_debug_def::deque< _Tp, _Allocator >::pop_back(), and __gnu_debug_def::deque< _Tp, _Allocator >::rbegin().
iterator __gnu_debug_def::deque< _Tp, _Allocator >::erase | ( | iterator | __first, | |
iterator | __last | |||
) | [inline] |
Definition at line 292 of file debug/deque.
References __glibcxx_check_erase_range, __throw_exception_again, __gnu_debug::_Safe_sequence_base::_M_detach_singular(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_sequence_base::_M_revalidate_singular(), __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::base(), __gnu_debug_def::deque< _Tp, _Allocator >::begin(), __gnu_debug_def::deque< _Tp, _Allocator >::end(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::erase().
iterator __gnu_debug_def::deque< _Tp, _Allocator >::erase | ( | iterator | __position | ) | [inline] |
Definition at line 275 of file debug/deque.
References __glibcxx_check_erase, __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::_M_invalidate(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::base(), __gnu_debug_def::deque< _Tp, _Allocator >::begin(), __gnu_debug_def::deque< _Tp, _Allocator >::end(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::erase().
const_reference __gnu_debug_def::deque< _Tp, _Allocator >::front | ( | ) | const [inline] |
Returns a read-only (constant) reference to the data at the first element of the deque.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 193 of file debug/deque.
References __glibcxx_check_nonempty, and _GLIBCXX_STD::deque< _Tp, _Allocator >::front().
reference __gnu_debug_def::deque< _Tp, _Allocator >::front | ( | ) | [inline] |
Returns a read/write reference to the data at the first element of the deque.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 186 of file debug/deque.
References __glibcxx_check_nonempty, and _GLIBCXX_STD::deque< _Tp, _Allocator >::front().
void __gnu_debug_def::deque< _Tp, _Allocator >::insert | ( | iterator | __position, | |
_InputIterator | __first, | |||
_InputIterator | __last | |||
) | [inline] |
Definition at line 247 of file debug/deque.
References __glibcxx_check_insert_range, __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::base(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::insert().
void __gnu_debug_def::deque< _Tp, _Allocator >::insert | ( | iterator | __position, | |
size_type | __n, | |||
const _Tp & | __x | |||
) | [inline] |
Definition at line 238 of file debug/deque.
References __glibcxx_check_insert, __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::base(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::insert().
iterator __gnu_debug_def::deque< _Tp, _Allocator >::insert | ( | iterator | __position, | |
const _Tp & | __x | |||
) | [inline] |
Definition at line 229 of file debug/deque.
References __glibcxx_check_insert, __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::base(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::insert().
deque<_Tp,_Allocator>& __gnu_debug_def::deque< _Tp, _Allocator >::operator= | ( | const deque< _Tp, _Allocator > & | __x | ) | [inline] |
Definition at line 88 of file debug/deque.
References __gnu_debug::_Safe_sequence_base::_M_invalidate_all().
const_reference __gnu_debug_def::deque< _Tp, _Allocator >::operator[] | ( | size_type | __n | ) | const [inline] |
Definition at line 177 of file debug/deque.
References __glibcxx_check_subscript, and __gnu_debug_def::deque< _Tp, _Allocator >::_M_base().
reference __gnu_debug_def::deque< _Tp, _Allocator >::operator[] | ( | size_type | __n | ) | [inline] |
Definition at line 170 of file debug/deque.
References __glibcxx_check_subscript, and __gnu_debug_def::deque< _Tp, _Allocator >::_M_base().
void __gnu_debug_def::deque< _Tp, _Allocator >::pop_back | ( | ) | [inline] |
Removes last element.
This is a typical stack operation. It shrinks the deque by one.
Note that no data is returned, and if the last element's data is needed, it should be retrieved before pop_back() is called.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 265 of file debug/deque.
References __glibcxx_check_nonempty, __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::_M_invalidate(), __gnu_debug_def::deque< _Tp, _Allocator >::end(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::pop_back().
void __gnu_debug_def::deque< _Tp, _Allocator >::pop_front | ( | ) | [inline] |
Removes first element.
This is a typical stack operation. It shrinks the deque by one.
Note that no data is returned, and if the first element's data is needed, it should be retrieved before pop_front() is called.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 256 of file debug/deque.
References __glibcxx_check_nonempty, __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::_M_invalidate(), __gnu_debug_def::deque< _Tp, _Allocator >::begin(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::pop_front().
void __gnu_debug_def::deque< _Tp, _Allocator >::push_back | ( | const _Tp & | __x | ) | [inline] |
Add data to the end of the deque.
x | Data to be added. |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 222 of file debug/deque.
References __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::push_back().
void __gnu_debug_def::deque< _Tp, _Allocator >::push_front | ( | const _Tp & | __x | ) | [inline] |
Add data to the front of the deque.
x | Data to be added. |
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 215 of file debug/deque.
References __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::push_front().
const_reverse_iterator __gnu_debug_def::deque< _Tp, _Allocator >::rbegin | ( | ) | const [inline] |
Returns a read-only (constant) reverse iterator that points to the last element in the deque. Iteration is done in reverse element order.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 135 of file debug/deque.
References __gnu_debug_def::deque< _Tp, _Allocator >::end().
reverse_iterator __gnu_debug_def::deque< _Tp, _Allocator >::rbegin | ( | ) | [inline] |
Returns a read/write reverse iterator that points to the last element in the deque. Iteration is done in reverse element order.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 131 of file debug/deque.
References __gnu_debug_def::deque< _Tp, _Allocator >::end().
const_reverse_iterator __gnu_debug_def::deque< _Tp, _Allocator >::rend | ( | ) | const [inline] |
Returns a read-only (constant) reverse iterator that points to one before the first element in the deque. Iteration is done in reverse element order.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 143 of file debug/deque.
References __gnu_debug_def::deque< _Tp, _Allocator >::begin().
reverse_iterator __gnu_debug_def::deque< _Tp, _Allocator >::rend | ( | ) | [inline] |
Returns a read/write reverse iterator that points to one before the first element in the deque. Iteration is done in reverse element order.
Reimplemented from _GLIBCXX_STD::deque< _Tp, _Allocator >.
Definition at line 139 of file debug/deque.
References __gnu_debug_def::deque< _Tp, _Allocator >::begin().
void __gnu_debug_def::deque< _Tp, _Allocator >::resize | ( | size_type | __sz, | |
_Tp | __c = _Tp() | |||
) | [inline] |
Definition at line 151 of file debug/deque.
References __gnu_debug_def::deque< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_sequence< _Sequence >::_M_invalidate_if(), __gnu_debug_def::deque< _Tp, _Allocator >::begin(), _GLIBCXX_STD::deque< _Tp, _Allocator >::resize(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::size().
void __gnu_debug_def::deque< _Tp, _Allocator >::swap | ( | deque< _Tp, _Allocator > & | __x | ) | [inline] |
Definition at line 326 of file debug/deque.
References __gnu_debug::_Safe_sequence_base::_M_swap(), and std::swap().
Referenced by __gnu_debug_def::swap().