_GLIBCXX_STD::_Deque_base< _Tp, _Alloc > Class Template Reference

#include <stl_deque.h>

Inheritance diagram for _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >:

_GLIBCXX_STD::deque< _Tp, _Alloc > List of all members.

Public Types

typedef _Alloc allocator_type
typedef _Deque_iterator< _Tp,
_Tp &, _Tp * > 
iterator
typedef _Deque_iterator< _Tp,
const _Tp &, const _Tp * > 
const_iterator

Public Member Functions

allocator_type get_allocator () const
 _Deque_base (const allocator_type &__a, size_t __num_elements)
 _Deque_base (const allocator_type &__a)
 ~_Deque_base ()

Protected Types

typedef _Alloc::template rebind<
_Tp * >::other 
_Map_alloc_type
typedef _Alloc::template rebind<
_Tp >::other 
_Tp_alloc_type
 _S_initial_map_size = 8
enum  { _S_initial_map_size = 8 }

Protected Member Functions

_Tp_alloc_type_M_get_Tp_allocator ()
const _Tp_alloc_type_M_get_Tp_allocator () const
_Map_alloc_type _M_get_map_allocator () const
_Tp * _M_allocate_node ()
void _M_deallocate_node (_Tp *__p)
_Tp ** _M_allocate_map (size_t __n)
void _M_deallocate_map (_Tp **__p, size_t __n)
void _M_initialize_map (size_t)
void _M_create_nodes (_Tp **__nstart, _Tp **__nfinish)
void _M_destroy_nodes (_Tp **__nstart, _Tp **__nfinish)

Protected Attributes

_Deque_impl _M_impl

Classes

struct  _Deque_impl

Detailed Description

template<typename _Tp, typename _Alloc>
class _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >

Definition at line 354 of file stl_deque.h.


Member Typedef Documentation

template<typename _Tp, typename _Alloc>
typedef _Alloc::template rebind<_Tp*>::other _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_Map_alloc_type [protected]

Definition at line 380 of file stl_deque.h.

template<typename _Tp, typename _Alloc>
typedef _Alloc::template rebind<_Tp>::other _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_Tp_alloc_type [protected]

Reimplemented in _GLIBCXX_STD::deque< _Tp, _Alloc >, and _GLIBCXX_STD::deque< _Tp, _Allocator >.

Definition at line 382 of file stl_deque.h.

template<typename _Tp, typename _Alloc>
typedef _Alloc _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::allocator_type

Reimplemented in _GLIBCXX_STD::deque< _Tp, _Alloc >, __gnu_debug_def::deque< _Tp, _Allocator >, and _GLIBCXX_STD::deque< _Tp, _Allocator >.

Definition at line 357 of file stl_deque.h.

template<typename _Tp, typename _Alloc>
typedef _Deque_iterator<_Tp, const _Tp&, const _Tp*> _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::const_iterator

Reimplemented in _GLIBCXX_STD::deque< _Tp, _Alloc >, __gnu_debug_def::deque< _Tp, _Allocator >, and _GLIBCXX_STD::deque< _Tp, _Allocator >.

Definition at line 364 of file stl_deque.h.

template<typename _Tp, typename _Alloc>
typedef _Deque_iterator<_Tp, _Tp&, _Tp*> _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::iterator

Reimplemented in _GLIBCXX_STD::deque< _Tp, _Alloc >, __gnu_debug_def::deque< _Tp, _Allocator >, and _GLIBCXX_STD::deque< _Tp, _Allocator >.

Definition at line 363 of file stl_deque.h.


Member Enumeration Documentation

template<typename _Tp, typename _Alloc>
anonymous enum [protected]

Enumerator:
_S_initial_map_size 

Definition at line 434 of file stl_deque.h.


Constructor & Destructor Documentation

template<typename _Tp, typename _Alloc>
_GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_Deque_base ( const allocator_type __a,
size_t  __num_elements 
) [inline]

Definition at line 366 of file stl_deque.h.

template<typename _Tp, typename _Alloc>
_GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_Deque_base ( const allocator_type __a  )  [inline]

Definition at line 370 of file stl_deque.h.

template<typename _Tp, typename _Alloc>
_GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::~_Deque_base (  ) 

Definition at line 441 of file stl_deque.h.

References _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_deallocate_map(), and _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_destroy_nodes().


Member Function Documentation

template<typename _Tp, typename _Alloc>
_Tp** _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_allocate_map ( size_t  __n  )  [inline, protected]

Definition at line 423 of file stl_deque.h.

Referenced by _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_initialize_map(), and _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_reallocate_map().

template<typename _Tp, typename _Alloc>
_Tp* _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_allocate_node (  )  [inline, protected]

Definition at line 411 of file stl_deque.h.

template<typename _Tp, typename _Alloc>
void _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_create_nodes ( _Tp **  __nstart,
_Tp **  __nfinish 
) [protected]

Definition at line 503 of file stl_deque.h.

References __throw_exception_again, and _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_destroy_nodes().

Referenced by _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_initialize_map().

template<typename _Tp, typename _Alloc>
void _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_deallocate_map ( _Tp **  __p,
size_t  __n 
) [inline, protected]

Definition at line 427 of file stl_deque.h.

Referenced by _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_initialize_map(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_reallocate_map(), and _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::~_Deque_base().

template<typename _Tp, typename _Alloc>
void _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_deallocate_node ( _Tp *  __p  )  [inline, protected]

Definition at line 417 of file stl_deque.h.

Referenced by _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_destroy_nodes(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_new_elements_at_back(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_new_elements_at_front(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_pop_back_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_pop_front_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_push_back_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_push_front_aux(), and _GLIBCXX_STD::deque< _Tp, _Alloc >::clear().

template<typename _Tp, typename _Alloc>
void _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_destroy_nodes ( _Tp **  __nstart,
_Tp **  __nfinish 
) [protected]

Definition at line 521 of file stl_deque.h.

References _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_deallocate_node().

Referenced by _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_create_nodes(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_fill_insert(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_insert_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_range_insert_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::erase(), and _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::~_Deque_base().

template<typename _Tp, typename _Alloc>
_Map_alloc_type _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_get_map_allocator (  )  const [inline, protected]

Definition at line 407 of file stl_deque.h.

Referenced by _GLIBCXX_STD::_Deque_base< _Tp, _Allocator >::_M_allocate_map(), and _GLIBCXX_STD::_Deque_base< _Tp, _Allocator >::_M_deallocate_map().

template<typename _Tp, typename _Alloc>
const _Tp_alloc_type& _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_get_Tp_allocator (  )  const [inline, protected]

Definition at line 403 of file stl_deque.h.

template<typename _Tp, typename _Alloc>
_Tp_alloc_type& _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_get_Tp_allocator (  )  [inline, protected]

Definition at line 399 of file stl_deque.h.

Referenced by _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_fill_initialize(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_fill_insert(), _GLIBCXX_STD::_Deque_base< _Tp, _Allocator >::_M_get_map_allocator(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_insert_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_range_initialize(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_range_insert_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::clear(), _GLIBCXX_STD::deque< _Tp, _Allocator >::deque(), _GLIBCXX_STD::deque< _Tp, _Alloc >::erase(), _GLIBCXX_STD::_Deque_base< _Tp, _Allocator >::get_allocator(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::~deque().

template<typename _Tp, typename _Alloc>
void _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_initialize_map ( size_t   )  [protected]

Definition at line 464 of file stl_deque.h.

References _GLIBCXX_STD::__deque_buf_size(), __throw_exception_again, _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_allocate_map(), _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_create_nodes(), _GLIBCXX_STD::_Deque_iterator< _Tp, _Ref, _Ptr >::_M_cur, _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_deallocate_map(), _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_Deque_impl::_M_finish, _GLIBCXX_STD::_Deque_iterator< _Tp, _Ref, _Ptr >::_M_first, _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_impl, _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_Deque_impl::_M_map, _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_Deque_impl::_M_map_size, _GLIBCXX_STD::_Deque_iterator< _Tp, _Ref, _Ptr >::_M_set_node(), _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_Deque_impl::_M_start, _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_S_initial_map_size, and std::max().

Referenced by _GLIBCXX_STD::_Deque_base< _Tp, _Allocator >::_Deque_base(), _GLIBCXX_STD::deque< _Tp, _Allocator >::_M_initialize_dispatch(), and _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_range_initialize().

template<typename _Tp, typename _Alloc>
allocator_type _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::get_allocator (  )  const [inline]

Reimplemented in _GLIBCXX_STD::deque< _Tp, _Alloc >, and _GLIBCXX_STD::deque< _Tp, _Allocator >.

Definition at line 360 of file stl_deque.h.


Member Data Documentation

template<typename _Tp, typename _Alloc>
_Deque_impl _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_impl [protected]

Definition at line 436 of file stl_deque.h.

Referenced by _GLIBCXX_STD::_Deque_base< _Tp, _Allocator >::_M_allocate_node(), _GLIBCXX_STD::_Deque_base< _Tp, _Allocator >::_M_deallocate_node(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_fill_initialize(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_fill_insert(), _GLIBCXX_STD::_Deque_base< _Tp, _Allocator >::_M_get_Tp_allocator(), _GLIBCXX_STD::_Deque_base< _Tp, _Alloc >::_M_initialize_map(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_insert_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_pop_back_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_pop_front_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_push_back_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_push_front_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_range_initialize(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_range_insert_aux(), _GLIBCXX_STD::deque< _Tp, _Alloc >::_M_reallocate_map(), _GLIBCXX_STD::deque< _Tp, _Allocator >::_M_reserve_elements_at_back(), _GLIBCXX_STD::deque< _Tp, _Allocator >::_M_reserve_elements_at_front(), _GLIBCXX_STD::deque< _Tp, _Allocator >::begin(), _GLIBCXX_STD::deque< _Tp, _Alloc >::clear(), _GLIBCXX_STD::deque< _Tp, _Allocator >::deque(), _GLIBCXX_STD::deque< _Tp, _Allocator >::empty(), _GLIBCXX_STD::deque< _Tp, _Allocator >::end(), _GLIBCXX_STD::deque< _Tp, _Alloc >::erase(), _GLIBCXX_STD::deque< _Tp, _Alloc >::insert(), _GLIBCXX_STD::deque< _Tp, _Alloc >::operator=(), _GLIBCXX_STD::deque< _Tp, _Allocator >::operator[](), _GLIBCXX_STD::deque< _Tp, _Allocator >::pop_back(), _GLIBCXX_STD::deque< _Tp, _Allocator >::pop_front(), _GLIBCXX_STD::deque< _Tp, _Allocator >::push_back(), _GLIBCXX_STD::deque< _Tp, _Allocator >::push_front(), _GLIBCXX_STD::deque< _Tp, _Allocator >::size(), and _GLIBCXX_STD::deque< _Tp, _Allocator >::swap().


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