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 >
 A deque::iterator. More...
class  std::deque< _Tp, _Alloc >
 A standard container using fixed-size memory allocation and constant-time manipulation of elements at either end. More...

Namespaces

namespace  std

Macros

#define _GLIBCXX_DEQUE_BUF_SIZE

Functions

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)
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)
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)
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)
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)
template<typename _Tp , typename _Ref , typename _Ptr >
bool std::operator< (const _Deque_iterator< _Tp, _Ref, _Ptr > &__x, const _Deque_iterator< _Tp, _Ref, _Ptr > &__y)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)

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

#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 86 of file stl_deque.h.