std::_Deque_base - Man Page

std::_Deque_base< _Tp, _Alloc >

Synopsis

#include <deque>

Inherited by std::deque< _StateSeqT > [protected], and std::deque< _Tp, _Alloc > [protected].

Protected Types

enum { _S_initial_map_size }
typedef __gnu_cxx::__alloc_traits< _Tp_alloc_type > _Alloc_traits
typedef __gnu_cxx::__alloc_traits< _Map_alloc_type > _Map_alloc_traits
typedef _Alloc_traits::template rebind< _Ptr >::other _Map_alloc_type
typedef iterator::_Map_pointer _Map_pointer
typedef _Alloc_traits::pointer _Ptr
typedef _Alloc_traits::const_pointer _Ptr_const
typedef __gnu_cxx::__alloc_traits< _Alloc >::template rebind< _Tp >::other _Tp_alloc_type
typedef _Alloc allocator_type
typedef _Deque_iterator< _Tp, const _Tp &, _Ptr_const > const_iterator
typedef _Deque_iterator< _Tp, _Tp &, _Ptr > iterator

Protected Member Functions

_Deque_base (_Deque_base &&__x)
_Deque_base (_Deque_base &&__x, const allocator_type &__a)
_Deque_base (_Deque_base &&__x, const allocator_type &__a, size_t __n)
_Deque_base (const allocator_type &__a)
_Deque_base (const allocator_type &__a, size_t __num_elements)
_Deque_base (size_t __num_elements)
_Map_pointer _M_allocate_map (size_t __n)
_Ptr _M_allocate_node ()
void _M_create_nodes (_Map_pointer __nstart, _Map_pointer __nfinish)
void _M_deallocate_map (_Map_pointer __p, size_t __n) noexcept
void _M_deallocate_node (_Ptr __p) noexcept
void _M_destroy_nodes (_Map_pointer __nstart, _Map_pointer __nfinish) noexcept
_Map_alloc_type _M_get_map_allocator () const noexcept
const _Tp_alloc_type & _M_get_Tp_allocator () const noexcept
_Tp_alloc_type & _M_get_Tp_allocator () noexcept
void _M_initialize_map (size_t)
Layout storage.
allocator_type get_allocator () const noexcept

Protected Attributes

_Deque_impl _M_impl

Detailed Description

template<typename _Tp, typename _Alloc>

class std::_Deque_base< _Tp, _Alloc >"Deque base class. This class provides the unified face for deque's allocation. This class's constructor and destructor allocate and deallocate (but do not initialize) storage. This makes exception safety easier.

Nothing in this class ever constructs or destroys an actual Tp element. (Deque handles that itself.) Only/All memory management is performed here.

Definition at line 430 of file deque.

Member Typedef Documentation

template<typename _Tp , typename _Alloc > typedef __gnu_cxx::__alloc_traits<_Tp_alloc_type> std::_Deque_base< _Tp, _Alloc >::_Alloc_traits [protected]

Definition at line 435 of file deque.

template<typename _Tp , typename _Alloc > typedef __gnu_cxx::__alloc_traits<_Map_alloc_type> std::_Deque_base< _Tp, _Alloc >::_Map_alloc_traits [protected]

Definition at line 447 of file deque.

template<typename _Tp , typename _Alloc > typedef _Alloc_traits::template rebind<_Ptr>::other std::_Deque_base< _Tp, _Alloc >::_Map_alloc_type [protected]

Definition at line 446 of file deque.

template<typename _Tp , typename _Alloc > typedef iterator::_Map_pointer std::_Deque_base< _Tp, _Alloc >::_Map_pointer [protected]

Definition at line 507 of file deque.

template<typename _Tp , typename _Alloc > typedef _Alloc_traits::pointer std::_Deque_base< _Tp, _Alloc >::_Ptr [protected]

Definition at line 441 of file deque.

template<typename _Tp , typename _Alloc > typedef _Alloc_traits::const_pointer std::_Deque_base< _Tp, _Alloc >::_Ptr_const [protected]

Definition at line 442 of file deque.

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

Definition at line 434 of file deque.

template<typename _Tp , typename _Alloc > typedef _Alloc std::_Deque_base< _Tp, _Alloc >::allocator_type [protected]

Definition at line 449 of file deque.

template<typename _Tp , typename _Alloc > typedef _Deque_iterator<_Tp, const _Tp&, _Ptr_const> std::_Deque_base< _Tp, _Alloc >::const_iterator [protected]

Definition at line 456 of file deque.

template<typename _Tp , typename _Alloc > typedef _Deque_iterator<_Tp, _Tp&, _Ptr> std::_Deque_base< _Tp, _Alloc >::iterator [protected]

Definition at line 455 of file deque.

Member Enumeration Documentation

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

Definition at line 611 of file deque.

Constructor & Destructor Documentation

template<typename _Tp , typename _Alloc > std::_Deque_base< _Tp, _Alloc >::_Deque_base () [inline], [protected]

Definition at line 458 of file deque.

template<typename _Tp , typename _Alloc > std::_Deque_base< _Tp, _Alloc >::_Deque_base (size_t __num_elements) [inline], [protected]

Definition at line 462 of file deque.

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

Definition at line 466 of file deque.

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

Definition at line 470 of file deque.

template<typename _Tp , typename _Alloc > std::_Deque_base< _Tp, _Alloc >::_Deque_base (_Deque_base< _Tp, _Alloc > && __x) [inline], [protected]

Definition at line 475 of file deque.

template<typename _Tp , typename _Alloc > std::_Deque_base< _Tp, _Alloc >::_Deque_base (_Deque_base< _Tp, _Alloc > && __x, const allocator_type & __a) [inline], [protected]

Definition at line 483 of file deque.

template<typename _Tp , typename _Alloc > std::_Deque_base< _Tp, _Alloc >::_Deque_base (_Deque_base< _Tp, _Alloc > && __x, const allocator_type & __a, size_t __n) [inline], [protected]

Definition at line 487 of file deque.

template<typename _Tp , typename _Alloc > std::_Deque_base< _Tp, _Alloc >::~_Deque_base [protected], [noexcept]

Definition at line 617 of file deque.

Member Function Documentation

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

Definition at line 594 of file deque.

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

Definition at line 580 of file deque.

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

Definition at line 677 of file deque.

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

Definition at line 601 of file deque.

template<typename _Tp , typename _Alloc > void std::_Deque_base< _Tp, _Alloc >::_M_deallocate_node (_Ptr __p) [inline], [protected], [noexcept]

Definition at line 587 of file deque.

template<typename _Tp , typename _Alloc > void std::_Deque_base< _Tp, _Alloc >::_M_destroy_nodes (_Map_pointer __nstart, _Map_pointer __nfinish) [protected], [noexcept]

Definition at line 695 of file deque.

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

Definition at line 576 of file deque.

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

Definition at line 572 of file deque.

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

Definition at line 568 of file deque.

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

Layout storage.

Parameters

__num_elements The count of T's for which to allocate space at first.

Returns

Nothing.

The initial underlying memory layout is a bit complicated...

Definition at line 638 of file deque.

References std::max().

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

Definition at line 452 of file deque.

Member Data Documentation

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

Definition at line 613 of file deque.

Author

Generated automatically by Doxygen for libstdc++ from the source code.

Info

Mon Nov 21 2022 libstdc++