Lines Matching refs:stack
14 stack synopsis
20 class stack
33 stack() = default;
34 ~stack() = default;
36 stack(const stack& q) = default;
37 stack(stack&& q) = default;
39 stack& operator=(const stack& q) = default;
40 stack& operator=(stack&& q) = default;
42 explicit stack(const container_type& c);
43 explicit stack(container_type&& c);
44 template <class InputIterator> stack(InputIterator first, InputIterator last); // since C++23
45 template <class Alloc> explicit stack(const Alloc& a);
46 template <class Alloc> stack(const container_type& c, const Alloc& a);
47 template <class Alloc> stack(container_type&& c, const Alloc& a);
48 template <class Alloc> stack(const stack& c, const Alloc& a);
49 template <class Alloc> stack(stack&& c, const Alloc& a);
51 stack(InputIterator first, InputIterator last, const Alloc&); // since C++23
63 void swap(stack& c) noexcept(is_nothrow_swappable_v<Container>)
67 stack(Container) -> stack<typename Container::value_type, Container>; // C++17
70 stack(InputIterator, InputIterator) -> stack<iter-value-type<InputIterator>>; // since C++23
73 stack(Container, Allocator) -> stack<typename Container::value_type, Container>; // C++17
76 stack(InputIterator, InputIterator, Allocator)
77 -> stack<iter-value-type<InputIterator>,
81 bool operator==(const stack<T, Container>& x, const stack<T, Container>& y);
83 bool operator< (const stack<T, Container>& x, const stack<T, Container>& y);
85 bool operator!=(const stack<T, Container>& x, const stack<T, Container>& y);
87 bool operator> (const stack<T, Container>& x, const stack<T, Container>& y);
89 bool operator>=(const stack<T, Container>& x, const stack<T, Container>& y);
91 bool operator<=(const stack<T, Container>& x, const stack<T, Container>& y);
94 void swap(stack<T, Container>& x, stack<T, Container>& y)
112 // [stack.syn]
122 template <class _Tp, class _Container = deque<_Tp> > class _LIBCPP_TEMPLATE_VIS stack;
127 operator==(const stack<_Tp, _Container>& __x, const stack<_Tp, _Container>& __y);
132 operator< (const stack<_Tp, _Container>& __x, const stack<_Tp, _Container>& __y);
135 class _LIBCPP_TEMPLATE_VIS stack
150 stack()
155 stack(const stack& __q) : c(__q.c) {}
158 stack& operator=(const stack& __q) {c = __q.c; return *this;}
163 stack(stack&& __q)
168 stack& operator=(stack&& __q)
173 explicit stack(container_type&& __c) : c(_VSTD::move(__c)) {}
177 explicit stack(const container_type& __c) : c(__c) {}
181 explicit stack(const _Alloc& __a,
186 stack(const container_type& __c, const _Alloc& __a,
191 stack(const stack& __s, const _Alloc& __a,
197 stack(container_type&& __c, const _Alloc& __a,
202 stack(stack&& __s, const _Alloc& __a,
211 stack(_InputIterator __first, _InputIterator __last) : c(__first, __last) {}
218 …stack(_InputIterator __first, _InputIterator __last, const _Alloc& __alloc) : c(__first, __last, _…
251 void swap(stack& __s)
263 operator==(const stack<T1, _C1>& __x, const stack<T1, _C1>& __y);
268 operator< (const stack<T1, _C1>& __x, const stack<T1, _C1>& __y);
275 stack(_Container)
276 -> stack<typename _Container::value_type, _Container>;
283 stack(_Container, _Alloc)
284 -> stack<typename _Container::value_type, _Container>;
290 stack(_InputIterator, _InputIterator)
291 -> stack<__iter_value_type<_InputIterator>>;
297 stack(_InputIterator, _InputIterator, _Alloc)
298 -> stack<__iter_value_type<_InputIterator>, deque<__iter_value_type<_InputIterator>, _Alloc>>;
304 operator==(const stack<_Tp, _Container>& __x, const stack<_Tp, _Container>& __y)
312 operator< (const stack<_Tp, _Container>& __x, const stack<_Tp, _Container>& __y)
320 operator!=(const stack<_Tp, _Container>& __x, const stack<_Tp, _Container>& __y)
328 operator> (const stack<_Tp, _Container>& __x, const stack<_Tp, _Container>& __y)
336 operator>=(const stack<_Tp, _Container>& __x, const stack<_Tp, _Container>& __y)
344 operator<=(const stack<_Tp, _Container>& __x, const stack<_Tp, _Container>& __y)
352 swap(stack<_Tp, _Container>& __x, stack<_Tp, _Container>& __y)
359 struct _LIBCPP_TEMPLATE_VIS uses_allocator<stack<_Tp, _Container>, _Alloc>