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

  __size | The 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 87 of file stl_deque.h.