libstdc++
stl_deque.h File Reference

Go to the source code of this file.

Classes

class  std::_Deque_base< _Tp, _Alloc >
 
struct  std::_Deque_iterator< _Tp, _Ref, _Ptr >
 
class  std::deque< _Tp, _Alloc >
 

Namespaces

 std
 

Macros

#define _GLIBCXX_DEQUE_BUF_SIZE
 

Functions

constexpr size_t std::__deque_buf_size (size_t __size)
 
template<typename _Tp >
_Deque_iterator< _Tp, _Tp &, _Tp * > std::copy (_Deque_iterator< _Tp, _Tp &, _Tp *> __first, _Deque_iterator< _Tp, _Tp &, _Tp *> __last, _Deque_iterator< _Tp, _Tp &, _Tp *> __result)
 
template<typename _Tp >
_Deque_iterator< _Tp, _Tp &, _Tp * > std::copy (_Deque_iterator< _Tp, const _Tp &, const _Tp *> __first, _Deque_iterator< _Tp, const _Tp &, const _Tp *> __last, _Deque_iterator< _Tp, _Tp &, _Tp *> __result)
 
template<typename _Tp >
_Deque_iterator< _Tp, _Tp &, _Tp * > std::copy_backward (_Deque_iterator< _Tp, _Tp &, _Tp *> __first, _Deque_iterator< _Tp, _Tp &, _Tp *> __last, _Deque_iterator< _Tp, _Tp &, _Tp *> __result)
 
template<typename _Tp >
_Deque_iterator< _Tp, _Tp &, _Tp * > std::copy_backward (_Deque_iterator< _Tp, const _Tp &, const _Tp *> __first, _Deque_iterator< _Tp, const _Tp &, const _Tp *> __last, _Deque_iterator< _Tp, _Tp &, _Tp *> __result)
 
template<typename _Tp >
void std::fill (const _Deque_iterator< _Tp, _Tp &, _Tp *> &__first, const _Deque_iterator< _Tp, _Tp &, _Tp *> &__last, const _Tp &__value)
 
template<typename _Tp >
_Deque_iterator< _Tp, _Tp &, _Tp * > std::move (_Deque_iterator< _Tp, _Tp &, _Tp *> __first, _Deque_iterator< _Tp, _Tp &, _Tp *> __last, _Deque_iterator< _Tp, _Tp &, _Tp *> __result)
 
template<typename _Tp >
_Deque_iterator< _Tp, _Tp &, _Tp * > std::move (_Deque_iterator< _Tp, const _Tp &, const _Tp *> __first, _Deque_iterator< _Tp, const _Tp &, const _Tp *> __last, _Deque_iterator< _Tp, _Tp &, _Tp *> __result)
 
template<typename _Tp >
_Deque_iterator< _Tp, _Tp &, _Tp * > std::move_backward (_Deque_iterator< _Tp, _Tp &, _Tp *> __first, _Deque_iterator< _Tp, _Tp &, _Tp *> __last, _Deque_iterator< _Tp, _Tp &, _Tp *> __result)
 
template<typename _Tp >
_Deque_iterator< _Tp, _Tp &, _Tp * > std::move_backward (_Deque_iterator< _Tp, const _Tp &, const _Tp *> __first, _Deque_iterator< _Tp, const _Tp &, const _Tp *> __last, _Deque_iterator< _Tp, _Tp &, _Tp *> __result)
 
template<typename _Tp , typename _Ref , typename _Ptr >
bool std::operator!= (const _Deque_iterator< _Tp, _Ref, _Ptr > &__x, const _Deque_iterator< _Tp, _Ref, _Ptr > &__y) noexcept
 
template<typename _Tp , typename _RefL , typename _PtrL , typename _RefR , typename _PtrR >
bool std::operator!= (const _Deque_iterator< _Tp, _RefL, _PtrL > &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept
 
template<typename _Tp , typename _Alloc >
bool std::operator!= (const deque< _Tp, _Alloc > &__x, const deque< _Tp, _Alloc > &__y)
 
template<typename _Tp , typename _Ref , typename _Ptr >
_Deque_iterator< _Tp, _Ref, _Ptr > std::operator+ (ptrdiff_t __n, const _Deque_iterator< _Tp, _Ref, _Ptr > &__x) noexcept
 
template<typename _Tp , typename _Ref , typename _Ptr >
_Deque_iterator< _Tp, _Ref, _Ptr >::difference_type std::operator- (const _Deque_iterator< _Tp, _Ref, _Ptr > &__x, const _Deque_iterator< _Tp, _Ref, _Ptr > &__y) noexcept
 
template<typename _Tp , typename _RefL , typename _PtrL , typename _RefR , typename _PtrR >
_Deque_iterator< _Tp, _RefL, _PtrL >::difference_type std::operator- (const _Deque_iterator< _Tp, _RefL, _PtrL > &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept
 
template<typename _Tp , typename _Ref , typename _Ptr >
bool std::operator< (const _Deque_iterator< _Tp, _Ref, _Ptr > &__x, const _Deque_iterator< _Tp, _Ref, _Ptr > &__y) noexcept
 
template<typename _Tp , typename _RefL , typename _PtrL , typename _RefR , typename _PtrR >
bool std::operator< (const _Deque_iterator< _Tp, _RefL, _PtrL > &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept
 
template<typename _Tp , typename _Alloc >
bool std::operator< (const deque< _Tp, _Alloc > &__x, const deque< _Tp, _Alloc > &__y)
 
template<typename _Tp , typename _Ref , typename _Ptr >
bool std::operator<= (const _Deque_iterator< _Tp, _Ref, _Ptr > &__x, const _Deque_iterator< _Tp, _Ref, _Ptr > &__y) noexcept
 
template<typename _Tp , typename _RefL , typename _PtrL , typename _RefR , typename _PtrR >
bool std::operator<= (const _Deque_iterator< _Tp, _RefL, _PtrL > &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept
 
template<typename _Tp , typename _Alloc >
bool std::operator<= (const deque< _Tp, _Alloc > &__x, const deque< _Tp, _Alloc > &__y)
 
template<typename _Tp , typename _Ref , typename _Ptr >
bool std::operator== (const _Deque_iterator< _Tp, _Ref, _Ptr > &__x, const _Deque_iterator< _Tp, _Ref, _Ptr > &__y) noexcept
 
template<typename _Tp , typename _RefL , typename _PtrL , typename _RefR , typename _PtrR >
bool std::operator== (const _Deque_iterator< _Tp, _RefL, _PtrL > &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept
 
template<typename _Tp , typename _Alloc >
bool std::operator== (const deque< _Tp, _Alloc > &__x, const deque< _Tp, _Alloc > &__y)
 
template<typename _Tp , typename _Ref , typename _Ptr >
bool std::operator> (const _Deque_iterator< _Tp, _Ref, _Ptr > &__x, const _Deque_iterator< _Tp, _Ref, _Ptr > &__y) noexcept
 
template<typename _Tp , typename _RefL , typename _PtrL , typename _RefR , typename _PtrR >
bool std::operator> (const _Deque_iterator< _Tp, _RefL, _PtrL > &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept
 
template<typename _Tp , typename _Alloc >
bool std::operator> (const deque< _Tp, _Alloc > &__x, const deque< _Tp, _Alloc > &__y)
 
template<typename _Tp , typename _Ref , typename _Ptr >
bool std::operator>= (const _Deque_iterator< _Tp, _Ref, _Ptr > &__x, const _Deque_iterator< _Tp, _Ref, _Ptr > &__y) noexcept
 
template<typename _Tp , typename _RefL , typename _PtrL , typename _RefR , typename _PtrR >
bool std::operator>= (const _Deque_iterator< _Tp, _RefL, _PtrL > &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept
 
template<typename _Tp , typename _Alloc >
bool std::operator>= (const deque< _Tp, _Alloc > &__x, const deque< _Tp, _Alloc > &__y)
 
template<typename _Tp , typename _Alloc >
void std::swap (deque< _Tp, _Alloc > &__x, deque< _Tp, _Alloc > &__y) noexcept(/*conditional */)
 

Detailed Description

This is an internal header file, included by other library headers. Do not attempt to use it directly. Instead, include <deque>.

Definition in file stl_deque.h.

Macro Definition Documentation

◆ _GLIBCXX_DEQUE_BUF_SIZE

#define _GLIBCXX_DEQUE_BUF_SIZE

This function controls the size of memory nodes.

Parameters
__sizeThe size of an element.
Returns
The number (not byte size) of elements per node.

This function started off as a compiler kludge from SGI, but seems to be a useful wrapper around a repeated constant expression. The 512 is tunable (and no other code needs to change), but no investigation has been done since inheriting the SGI code. Touch _GLIBCXX_DEQUE_BUF_SIZE only if you know what you are doing, however: changing it breaks the binary compatibility!!

Definition at line 89 of file stl_deque.h.