STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Protected Attributes | List of all members
queue< _Ty, _Container > Class Template Reference

Public Types

typedef queue< _Ty, _Container > _Myt
 
typedef _Container container_type
 
typedef _Container::value_type value_type
 
typedef _Container::size_type size_type
 
typedef _Container::reference reference
 
typedef _Container::const_reference const_reference
 

Public Member Functions

 queue ()
 
 queue (const _Container &_Cont)
 
template<class _Alloc , class = typename enable_if<uses_allocator<_Container, _Alloc>::value, void>::type>
 queue (const _Alloc &_Al)
 
template<class _Alloc , class = typename enable_if<uses_allocator<_Container, _Alloc>::value, void>::type>
 queue (const _Container &_Cont, const _Alloc &_Al)
 
template<class _Alloc , class = typename enable_if<uses_allocator<_Container, _Alloc>::value, void>::type>
 queue (const _Myt &_Right, const _Alloc &_Al)
 
 queue (_Container &&_Cont)
 
template<class _Alloc , class = typename enable_if<uses_allocator<_Container, _Alloc>::value, void>::type>
 queue (_Container &&_Cont, const _Alloc &_Al)
 
template<class _Alloc , class = typename enable_if<uses_allocator<_Container, _Alloc>::value, void>::type>
 queue (_Myt &&_Right, const _Alloc &_Al)
 
void push (value_type &&_Val)
 
template<class... _Valty>
void emplace (_Valty &&..._Val)
 
bool empty () const
 
size_type size () const
 
reference front ()
 
const_reference front () const
 
reference back ()
 
const_reference back () const
 
void push (const value_type &_Val)
 
void pop ()
 
const _Container & _Get_container () const
 
void swap (_Myt &_Right) _NOEXCEPT_OP(_Is_nothrow_swappable< _Container >
 

Protected Attributes

_Container c
 

Member Typedef Documentation

template<class _Ty, class _Container = deque<_Ty>>
typedef queue<_Ty, _Container> queue< _Ty, _Container >::_Myt
template<class _Ty, class _Container = deque<_Ty>>
typedef _Container::const_reference queue< _Ty, _Container >::const_reference
template<class _Ty, class _Container = deque<_Ty>>
typedef _Container queue< _Ty, _Container >::container_type
template<class _Ty, class _Container = deque<_Ty>>
typedef _Container::reference queue< _Ty, _Container >::reference
template<class _Ty, class _Container = deque<_Ty>>
typedef _Container::size_type queue< _Ty, _Container >::size_type
template<class _Ty, class _Container = deque<_Ty>>
typedef _Container::value_type queue< _Ty, _Container >::value_type

Constructor & Destructor Documentation

template<class _Ty, class _Container = deque<_Ty>>
queue< _Ty, _Container >::queue ( )
inline
32  : c()
33  { // construct with empty container
34  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
queue< _Ty, _Container >::queue ( const _Container &  _Cont)
inlineexplicit
37  : c(_Cont)
38  { // construct by copying specified container
39  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
template<class _Alloc , class = typename enable_if<uses_allocator<_Container, _Alloc>::value, void>::type>
queue< _Ty, _Container >::queue ( const _Alloc &  _Al)
inlineexplicit
45  : c(_Al)
46  { // construct with empty container, allocator
47  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
template<class _Alloc , class = typename enable_if<uses_allocator<_Container, _Alloc>::value, void>::type>
queue< _Ty, _Container >::queue ( const _Container &  _Cont,
const _Alloc &  _Al 
)
inline
53  : c(_Cont, _Al)
54  { // construct by copying specified container, allocator
55  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
template<class _Alloc , class = typename enable_if<uses_allocator<_Container, _Alloc>::value, void>::type>
queue< _Ty, _Container >::queue ( const _Myt _Right,
const _Alloc &  _Al 
)
inline
61  : c(_Right.c, _Al)
62  { // construct by copying _Right container, allocator
63  }
_Container c
Definition: queue:149
constexpr const _Ty &() _Right
Definition: algorithm:3723
template<class _Ty, class _Container = deque<_Ty>>
queue< _Ty, _Container >::queue ( _Container &&  _Cont)
inlineexplicit
66  : c(_STD move(_Cont))
67  { // construct by moving specified container
68  }
_Container c
Definition: queue:149
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
template<class _Ty, class _Container = deque<_Ty>>
template<class _Alloc , class = typename enable_if<uses_allocator<_Container, _Alloc>::value, void>::type>
queue< _Ty, _Container >::queue ( _Container &&  _Cont,
const _Alloc &  _Al 
)
inline
74  : c(_STD move(_Cont), _Al)
75  { // construct by moving specified container, allocator
76  }
_Container c
Definition: queue:149
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
template<class _Ty, class _Container = deque<_Ty>>
template<class _Alloc , class = typename enable_if<uses_allocator<_Container, _Alloc>::value, void>::type>
queue< _Ty, _Container >::queue ( _Myt &&  _Right,
const _Alloc &  _Al 
)
inline
82  : c(_STD move(_Right.c), _Al)
83  { // construct by moving _Right container, allocator
84  }
_Container c
Definition: queue:149
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
constexpr const _Ty &() _Right
Definition: algorithm:3723

Member Function Documentation

template<class _Ty, class _Container = deque<_Ty>>
const _Container& queue< _Ty, _Container >::_Get_container ( ) const
inline
138  { // get reference to container
139  return (c);
140  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
reference queue< _Ty, _Container >::back ( )
inline
118  { // return last element of mutable queue
119  return (c.back());
120  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
const_reference queue< _Ty, _Container >::back ( ) const
inline
123  { // return last element of nonmutable queue
124  return (c.back());
125  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
template<class... _Valty>
void queue< _Ty, _Container >::emplace ( _Valty &&...  _Val)
inline
93  { // insert element at beginning
94  c.emplace_back(_STD forward<_Valty>(_Val)...);
95  }
_Container c
Definition: queue:149
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Ty, class _Container = deque<_Ty>>
bool queue< _Ty, _Container >::empty ( ) const
inline
98  { // test if queue is empty
99  return (c.empty());
100  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
reference queue< _Ty, _Container >::front ( )
inline
108  { // return first element of mutable queue
109  return (c.front());
110  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
const_reference queue< _Ty, _Container >::front ( ) const
inline
113  { // return first element of nonmutable queue
114  return (c.front());
115  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
void queue< _Ty, _Container >::pop ( )
inline
133  { // erase element at end
134  c.pop_front();
135  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
void queue< _Ty, _Container >::push ( value_type &&  _Val)
inline
87  { // insert element at beginning
88  c.push_back(_STD move(_Val));
89  }
_Container c
Definition: queue:149
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Ty, class _Container = deque<_Ty>>
void queue< _Ty, _Container >::push ( const value_type _Val)
inline
128  { // insert element at beginning
129  c.push_back(_Val);
130  }
_Container c
Definition: queue:149
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Ty, class _Container = deque<_Ty>>
size_type queue< _Ty, _Container >::size ( ) const
inline
103  { // return length of queue
104  return (c.size());
105  }
_Container c
Definition: queue:149
template<class _Ty, class _Container = deque<_Ty>>
void queue< _Ty, _Container >::swap ( _Myt _Right)
inline
144  { // exchange contents with _Right
145  _Swap_adl(c, _Right.c);
146  }
_Container c
Definition: queue:149
void _Swap_adl(_Ty &_Left, _Ty &_Right) _NOEXCEPT_OP(_Is_nothrow_swappable< _Ty >
Definition: utility:73
constexpr const _Ty &() _Right
Definition: algorithm:3723

Member Data Documentation

template<class _Ty, class _Container = deque<_Ty>>
_Container queue< _Ty, _Container >::c
protected

The documentation for this class was generated from the following file: