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 _Myt &_Right)
 
 queue (const _Container &_Cont)
 
_Mytoperator= (const _Myt &_Right)
 
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 (_Myt &&_Right) _NOEXCEPT_OP(is_nothrow_move_constructible< _Container >
 
 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)
 
_Mytoperator= (_Myt &&_Right) _NOEXCEPT_OP(is_nothrow_move_assignable< _Container >
 
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
29  : c()
30  { // construct with empty container
31  }
_Container c
Definition: queue:166
template<class _Ty, class _Container = deque<_Ty>>
queue< _Ty, _Container >::queue ( const _Myt _Right)
inline
34  : c(_Right.c)
35  { // construct by copying _Right container
36  }
_Container c
Definition: queue:166
constexpr const _Ty &() _Right
Definition: algorithm:3591
template<class _Ty, class _Container = deque<_Ty>>
queue< _Ty, _Container >::queue ( const _Container &  _Cont)
inlineexplicit
39  : c(_Cont)
40  { // construct by copying specified container
41  }
_Container c
Definition: queue:166
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
54  : c(_Al)
55  { // construct with empty container, allocator
56  }
_Container c
Definition: queue:166
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
62  : c(_Cont, _Al)
63  { // construct by copying specified container, allocator
64  }
_Container c
Definition: queue:166
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
70  : c(_Right.c, _Al)
71  { // construct by copying _Right container, allocator
72  }
_Container c
Definition: queue:166
constexpr const _Ty &() _Right
Definition: algorithm:3591
template<class _Ty, class _Container = deque<_Ty>>
queue< _Ty, _Container >::queue ( _Myt &&  _Right)
inline
76  : c(_STD move(_Right.c))
77  { // construct by moving _Right
78  }
_Container c
Definition: queue:166
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1290
constexpr const _Ty &() _Right
Definition: algorithm:3591
template<class _Ty, class _Container = deque<_Ty>>
queue< _Ty, _Container >::queue ( _Container &&  _Cont)
inlineexplicit
81  : c(_STD move(_Cont))
82  { // construct by moving specified container
83  }
_Container c
Definition: queue:166
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1290
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
89  : c(_STD move(_Cont), _Al)
90  { // construct by moving specified container, allocator
91  }
_Container c
Definition: queue:166
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1290
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
97  : c(_STD move(_Right.c), _Al)
98  { // construct by moving _Right container, allocator
99  }
_Container c
Definition: queue:166
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1290
constexpr const _Ty &() _Right
Definition: algorithm:3591

Member Function Documentation

template<class _Ty, class _Container = deque<_Ty>>
const _Container& queue< _Ty, _Container >::_Get_container ( ) const
inline
161  { // get reference to container
162  return (c);
163  }
_Container c
Definition: queue:166
template<class _Ty, class _Container = deque<_Ty>>
reference queue< _Ty, _Container >::back ( )
inline
141  { // return last element of mutable queue
142  return (c.back());
143  }
_Container c
Definition: queue:166
template<class _Ty, class _Container = deque<_Ty>>
const_reference queue< _Ty, _Container >::back ( ) const
inline
146  { // return last element of nonmutable queue
147  return (c.back());
148  }
_Container c
Definition: queue:166
template<class _Ty, class _Container = deque<_Ty>>
template<class... _Valty>
void queue< _Ty, _Container >::emplace ( _Valty &&...  _Val)
inline
115  { // insert element at beginning
116  c.emplace_back(_STD forward<_Valty>(_Val)...);
117  }
_Container c
Definition: queue:166
_In_ int _Val
Definition: vcruntime_string.h:62
template<class _Ty, class _Container = deque<_Ty>>
bool queue< _Ty, _Container >::empty ( ) const
inline
121  { // test if queue is empty
122  return (c.empty());
123  }
_Container c
Definition: queue:166
template<class _Ty, class _Container = deque<_Ty>>
reference queue< _Ty, _Container >::front ( )
inline
131  { // return first element of mutable queue
132  return (c.front());
133  }
_Container c
Definition: queue:166
template<class _Ty, class _Container = deque<_Ty>>
const_reference queue< _Ty, _Container >::front ( ) const
inline
136  { // return first element of nonmutable queue
137  return (c.front());
138  }
_Container c
Definition: queue:166
template<class _Ty, class _Container = deque<_Ty>>
_Myt& queue< _Ty, _Container >::operator= ( const _Myt _Right)
inline
44  { // assign by copying _Right
45  c = _Right.c;
46  return (*this);
47  }
_Container c
Definition: queue:166
constexpr const _Ty &() _Right
Definition: algorithm:3591
template<class _Ty, class _Container = deque<_Ty>>
_Myt& queue< _Ty, _Container >::operator= ( _Myt &&  _Right)
inline
103  { // assign by moving _Right
104  c = _STD move(_Right.c);
105  return (*this);
106  }
_Container c
Definition: queue:166
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1290
constexpr const _Ty &() _Right
Definition: algorithm:3591
template<class _Ty, class _Container = deque<_Ty>>
void queue< _Ty, _Container >::pop ( )
inline
156  { // erase element at end
157  c.pop_front();
158  }
_Container c
Definition: queue:166
template<class _Ty, class _Container = deque<_Ty>>
void queue< _Ty, _Container >::push ( value_type &&  _Val)
inline
109  { // insert element at beginning
110  c.push_back(_STD move(_Val));
111  }
_Container c
Definition: queue:166
_In_ int _Val
Definition: vcruntime_string.h:62
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1290
template<class _Ty, class _Container = deque<_Ty>>
void queue< _Ty, _Container >::push ( const value_type _Val)
inline
151  { // insert element at beginning
152  c.push_back(_Val);
153  }
_Container c
Definition: queue:166
_In_ int _Val
Definition: vcruntime_string.h:62
template<class _Ty, class _Container = deque<_Ty>>
size_type queue< _Ty, _Container >::size ( ) const
inline
126  { // return length of queue
127  return (c.size());
128  }
_Container c
Definition: queue:166
template<class _Ty, class _Container = deque<_Ty>>
void queue< _Ty, _Container >::swap ( _Myt _Right)
inline
171  { // exchange contents with _Right
172  _Swap_adl(c, _Right.c);
173  }
_Container c
Definition: queue:166
void _Swap_adl(_Ty &_Left, _Ty &_Right) _NOEXCEPT_OP(_Is_nothrow_swappable< _Ty >
Definition: utility:56
constexpr const _Ty &() _Right
Definition: algorithm:3591

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: