__gnu_debug_def::vector< _Tp, _Allocator > Class Template Reference

Inheritance diagram for __gnu_debug_def::vector< _Tp, _Allocator >:

_GLIBCXX_STD::vector< _Tp, _Allocator > __gnu_debug::_Safe_sequence< _Sequence > _GLIBCXX_STD::_Vector_base< _Tp, _Allocator > __gnu_debug::_Safe_sequence_base List of all members.

Public Types

typedef _Base::reference reference
typedef _Base::const_reference const_reference
typedef __gnu_debug::_Safe_iterator<
typename _Base::iterator,
vector
iterator
typedef __gnu_debug::_Safe_iterator<
typename _Base::const_iterator,
vector
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

 vector (const _Allocator &__a=_Allocator())
 Default constructor creates no elements.
 vector (size_type __n, const _Tp &__value=_Tp(), const _Allocator &__a=_Allocator())
template<class _InputIterator>
 vector (_InputIterator __first, _InputIterator __last, const _Allocator &__a=_Allocator())
 Builds a vector from a range.
 vector (const vector< _Tp, _Allocator > &__x)
 vector (const _Base &__x)
 Construction from a release-mode vector.
 ~vector ()
vector< _Tp, _Allocator > & operator= (const vector< _Tp, _Allocator > &__x)
template<typename _InputIterator>
void assign (_InputIterator __first, _InputIterator __last)
 Assigns a range to a vector.
void assign (size_type __n, const _Tp &__u)
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())
void reserve (size_type __n)
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_back (const _Tp &__x)
 Add data to the end of the vector.
void pop_back ()
 Removes last element.
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)
iterator erase (iterator __position)
iterator erase (iterator __first, iterator __last)
void swap (vector< _Tp, _Allocator > &__x)
void clear ()
_Base_M_base ()
const _Base_M_base () const

Private Types

typedef _GLIBCXX_STD::vector<
_Tp, _Allocator > 
_Base
typedef __gnu_debug::_Safe_sequence<
vector
_Safe_base
typedef _Base::const_iterator _Base_const_iterator
typedef __gnu_debug::_After_nth_from<
_Base_const_iterator
_After_nth

Private Member Functions

bool _M_requires_reallocation (size_type __elements)
void _M_update_guaranteed_capacity ()

Private Attributes

size_type _M_guaranteed_capacity

Detailed Description

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
class __gnu_debug_def::vector< _Tp, _Allocator >

Definition at line 43 of file debug/vector.


Member Typedef Documentation

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef __gnu_debug::_After_nth_from<_Base_const_iterator> __gnu_debug_def::vector< _Tp, _Allocator >::_After_nth [private]

Definition at line 51 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _GLIBCXX_STD::vector<_Tp, _Allocator> __gnu_debug_def::vector< _Tp, _Allocator >::_Base [private]

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 47 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::const_iterator __gnu_debug_def::vector< _Tp, _Allocator >::_Base_const_iterator [private]

Definition at line 50 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef __gnu_debug::_Safe_sequence<vector> __gnu_debug_def::vector< _Tp, _Allocator >::_Safe_base [private]

Definition at line 48 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Allocator __gnu_debug_def::vector< _Tp, _Allocator >::allocator_type

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 66 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef __gnu_debug::_Safe_iterator<typename _Base::const_iterator,vector> __gnu_debug_def::vector< _Tp, _Allocator >::const_iterator

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 60 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::const_pointer __gnu_debug_def::vector< _Tp, _Allocator >::const_pointer

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 68 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::const_reference __gnu_debug_def::vector< _Tp, _Allocator >::const_reference

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 55 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef std::reverse_iterator<const_iterator> __gnu_debug_def::vector< _Tp, _Allocator >::const_reverse_iterator

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 70 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::difference_type __gnu_debug_def::vector< _Tp, _Allocator >::difference_type

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 63 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef __gnu_debug::_Safe_iterator<typename _Base::iterator,vector> __gnu_debug_def::vector< _Tp, _Allocator >::iterator

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 58 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::pointer __gnu_debug_def::vector< _Tp, _Allocator >::pointer

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 67 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::reference __gnu_debug_def::vector< _Tp, _Allocator >::reference

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 54 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef std::reverse_iterator<iterator> __gnu_debug_def::vector< _Tp, _Allocator >::reverse_iterator

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 69 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::size_type __gnu_debug_def::vector< _Tp, _Allocator >::size_type

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 62 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Tp __gnu_debug_def::vector< _Tp, _Allocator >::value_type

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 65 of file debug/vector.


Constructor & Destructor Documentation

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
__gnu_debug_def::vector< _Tp, _Allocator >::vector ( const _Allocator &  __a = _Allocator()  )  [inline, explicit]

Default constructor creates no elements.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 73 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
__gnu_debug_def::vector< _Tp, _Allocator >::vector ( size_type  __n,
const _Tp &  __value = _Tp(),
const _Allocator &  __a = _Allocator() 
) [inline, explicit]

Definition at line 76 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
template<class _InputIterator>
__gnu_debug_def::vector< _Tp, _Allocator >::vector ( _InputIterator  __first,
_InputIterator  __last,
const _Allocator &  __a = _Allocator() 
) [inline]

Builds a vector from a range.

Parameters:
first An input iterator.
last An input iterator.
Create a vector consisting of copies of the elements from [first,last).

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::vector< _Tp, _Allocator >.

Definition at line 81 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
__gnu_debug_def::vector< _Tp, _Allocator >::vector ( const vector< _Tp, _Allocator > &  __x  )  [inline]

Definition at line 88 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
__gnu_debug_def::vector< _Tp, _Allocator >::vector ( const _Base __x  )  [inline]

Construction from a release-mode vector.

Definition at line 92 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
__gnu_debug_def::vector< _Tp, _Allocator >::~vector (  )  [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::vector< _Tp, _Allocator >.

Definition at line 95 of file debug/vector.


Member Function Documentation

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const _Base& __gnu_debug_def::vector< _Tp, _Allocator >::_M_base (  )  const [inline]

Definition at line 351 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
_Base& __gnu_debug_def::vector< _Tp, _Allocator >::_M_base (  )  [inline]

Definition at line 348 of file debug/vector.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::erase(), __gnu_debug_def::vector< _Tp, _Allocator >::insert(), __gnu_debug_def::operator!=(), __gnu_debug_def::operator==(), __gnu_debug_def::operator>(), __gnu_debug_def::operator>=(), __gnu_debug_def::vector< _Tp, _Allocator >::operator[](), and __gnu_debug_def::vector< _Tp, _Allocator >::resize().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
bool __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation ( size_type  __elements  )  [inline, private]

Definition at line 357 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity, and _GLIBCXX_STD::vector< _Tp, _Allocator >::capacity().

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::insert(), __gnu_debug_def::vector< _Tp, _Allocator >::push_back(), __gnu_debug_def::vector< _Tp, _Allocator >::reserve(), and __gnu_debug_def::vector< _Tp, _Allocator >::resize().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity (  )  [inline, private]

Definition at line 367 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::assign(), __gnu_debug_def::vector< _Tp, _Allocator >::insert(), __gnu_debug_def::vector< _Tp, _Allocator >::operator=(), __gnu_debug_def::vector< _Tp, _Allocator >::push_back(), and __gnu_debug_def::vector< _Tp, _Allocator >::vector().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::assign ( size_type  __n,
const _Tp &  __u 
) [inline]

Definition at line 117 of file debug/vector.

References __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::assign().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
template<typename _InputIterator>
void __gnu_debug_def::vector< _Tp, _Allocator >::assign ( _InputIterator  __first,
_InputIterator  __last 
) [inline]

Assigns a range to a vector.

Parameters:
first An input iterator.
last An input iterator.
This function fills a vector with copies of the elements in the range [first,last).

Note that the assignment completely changes the vector and that the resulting vector's size is the same as the number of elements assigned. Old data may be lost.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 108 of file debug/vector.

References __glibcxx_check_valid_range, __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::assign().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_reference __gnu_debug_def::vector< _Tp, _Allocator >::back (  )  const [inline]

Returns a read-only (constant) reference to the data at the last element of the vector.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 227 of file debug/vector.

References __glibcxx_check_nonempty, and _GLIBCXX_STD::vector< _Tp, _Allocator >::back().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
reference __gnu_debug_def::vector< _Tp, _Allocator >::back (  )  [inline]

Returns a read/write reference to the data at the last element of the vector.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 220 of file debug/vector.

References __glibcxx_check_nonempty, and _GLIBCXX_STD::vector< _Tp, _Allocator >::back().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_iterator __gnu_debug_def::vector< _Tp, _Allocator >::begin (  )  const [inline]

Returns a read-only (constant) iterator that points to the first element in the vector. Iteration is done in ordinary element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 132 of file debug/vector.

References _GLIBCXX_STD::vector< _Tp, _Allocator >::begin().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
iterator __gnu_debug_def::vector< _Tp, _Allocator >::begin (  )  [inline]

Returns a read/write iterator that points to the first element in the vector. Iteration is done in ordinary element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 128 of file debug/vector.

References _GLIBCXX_STD::vector< _Tp, _Allocator >::begin().

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::erase(), __gnu_debug_def::vector< _Tp, _Allocator >::insert(), __gnu_debug_def::vector< _Tp, _Allocator >::rend(), and __gnu_debug_def::vector< _Tp, _Allocator >::resize().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _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::vector< _Tp, _Allocator >.

Definition at line 340 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity, __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::clear().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_iterator __gnu_debug_def::vector< _Tp, _Allocator >::end (  )  const [inline]

Returns a read-only (constant) iterator that points one past the last element in the vector. Iteration is done in ordinary element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 140 of file debug/vector.

References _GLIBCXX_STD::vector< _Tp, _Allocator >::end().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
iterator __gnu_debug_def::vector< _Tp, _Allocator >::end (  )  [inline]

Returns a read/write iterator that points one past the last element in the vector. Iteration is done in ordinary element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 136 of file debug/vector.

References _GLIBCXX_STD::vector< _Tp, _Allocator >::end().

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::pop_back(), and __gnu_debug_def::vector< _Tp, _Allocator >::rbegin().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
iterator __gnu_debug_def::vector< _Tp, _Allocator >::erase ( iterator  __first,
iterator  __last 
) [inline]

Definition at line 318 of file debug/vector.

References __glibcxx_check_erase_range, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence< _Sequence >::_M_invalidate_if(), __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::base(), __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::erase().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
iterator __gnu_debug_def::vector< _Tp, _Allocator >::erase ( iterator  __position  )  [inline]

Definition at line 308 of file debug/vector.

References __glibcxx_check_erase, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence< _Sequence >::_M_invalidate_if(), __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::base(), __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::erase().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_reference __gnu_debug_def::vector< _Tp, _Allocator >::front (  )  const [inline]

Returns a read-only (constant) reference to the data at the first element of the vector.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 213 of file debug/vector.

References __glibcxx_check_nonempty, and _GLIBCXX_STD::vector< _Tp, _Allocator >::front().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
reference __gnu_debug_def::vector< _Tp, _Allocator >::front (  )  [inline]

Returns a read/write reference to the data at the first element of the vector.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 206 of file debug/vector.

References __glibcxx_check_nonempty, and _GLIBCXX_STD::vector< _Tp, _Allocator >::front().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
template<class _InputIterator>
void __gnu_debug_def::vector< _Tp, _Allocator >::insert ( iterator  __position,
_InputIterator  __first,
_InputIterator  __last 
) [inline]

Definition at line 288 of file debug/vector.

References __glibcxx_check_insert_range, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_sequence< _Sequence >::_M_invalidate_if(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::base(), __gnu_debug_def::vector< _Tp, _Allocator >::begin(), _GLIBCXX_STD::vector< _Tp, _Alloc >::begin(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::insert().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::insert ( iterator  __position,
size_type  __n,
const _Tp &  __x 
) [inline]

Definition at line 273 of file debug/vector.

References __glibcxx_check_insert, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_sequence< _Sequence >::_M_invalidate_if(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::base(), __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::insert().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
iterator __gnu_debug_def::vector< _Tp, _Allocator >::insert ( iterator  __position,
const _Tp &  __x 
) [inline]

Definition at line 258 of file debug/vector.

References __glibcxx_check_insert, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_sequence< _Sequence >::_M_invalidate_if(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::base(), __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::insert().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
vector<_Tp,_Allocator>& __gnu_debug_def::vector< _Tp, _Allocator >::operator= ( const vector< _Tp, _Allocator > &  __x  )  [inline]

Definition at line 98 of file debug/vector.

References __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_reference __gnu_debug_def::vector< _Tp, _Allocator >::operator[] ( size_type  __n  )  const [inline]

Definition at line 197 of file debug/vector.

References __glibcxx_check_subscript, and __gnu_debug_def::vector< _Tp, _Allocator >::_M_base().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
reference __gnu_debug_def::vector< _Tp, _Allocator >::operator[] ( size_type  __n  )  [inline]

Definition at line 190 of file debug/vector.

References __glibcxx_check_subscript, and __gnu_debug_def::vector< _Tp, _Allocator >::_M_base().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::pop_back (  )  [inline]

Removes last element.

This is a typical stack operation. It shrinks the vector 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::vector< _Tp, _Allocator >.

Definition at line 249 of file debug/vector.

References __glibcxx_check_nonempty, __gnu_debug::_Safe_iterator< _Iterator, _Sequence >::_M_invalidate(), __gnu_debug_def::vector< _Tp, _Allocator >::end(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::pop_back().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::push_back ( const _Tp &  __x  )  [inline]

Add data to the end of the vector.

Parameters:
x Data to be added.
This is a typical stack operation. The function creates an element at the end of the vector and assigns the given data to it. Due to the nature of a vector this operation can be done in constant time if the vector has preallocated space available.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 239 of file debug/vector.

References __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::push_back().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_reverse_iterator __gnu_debug_def::vector< _Tp, _Allocator >::rbegin (  )  const [inline]

Returns a read-only (constant) reverse iterator that points to the last element in the vector. Iteration is done in reverse element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 148 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::end().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
reverse_iterator __gnu_debug_def::vector< _Tp, _Allocator >::rbegin (  )  [inline]

Returns a read/write reverse iterator that points to the last element in the vector. Iteration is done in reverse element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 144 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::end().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_reverse_iterator __gnu_debug_def::vector< _Tp, _Allocator >::rend (  )  const [inline]

Returns a read-only (constant) reverse iterator that points to one before the first element in the vector. Iteration is done in reverse element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 156 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::begin().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
reverse_iterator __gnu_debug_def::vector< _Tp, _Allocator >::rend (  )  [inline]

Returns a read/write reverse iterator that points to one before the first element in the vector. Iteration is done in reverse element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 152 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::begin().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::reserve ( size_type  __n  )  [inline]

Definition at line 178 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity, __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::reserve().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::resize ( size_type  __sz,
_Tp  __c = _Tp() 
) [inline]

Definition at line 164 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_sequence< _Sequence >::_M_invalidate_if(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), __gnu_debug_def::vector< _Tp, _Allocator >::begin(), _GLIBCXX_STD::vector< _Tp, _Allocator >::resize(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::size().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::swap ( vector< _Tp, _Allocator > &  __x  )  [inline]

Definition at line 332 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity, __gnu_debug::_Safe_sequence_base::_M_swap(), and std::swap().

Referenced by __gnu_debug_def::swap().


Member Data Documentation

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
size_type __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity [private]

Definition at line 354 of file debug/vector.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), __gnu_debug_def::vector< _Tp, _Allocator >::clear(), __gnu_debug_def::vector< _Tp, _Allocator >::reserve(), and __gnu_debug_def::vector< _Tp, _Allocator >::swap().


The documentation for this class was generated from the following file:
Generated on Tue Feb 2 16:58:19 2010 for GNU C++ STL by  doxygen 1.4.7