82 template <IIterableOfTo<T> ITERABLE_OF_ADDABLE>
83 explicit
Deque (ITERABLE_OF_ADDABLE&& src)
84 requires (not derived_from<remove_cvref_t<ITERABLE_OF_ADDABLE>,
Deque<T>>)
85#if qCompilerAndStdLib_RequiresNotMatchInlineOutOfLineForTemplateClassBeingDefined_Buggy
88 this->AddAllToTail (forward<ITERABLE_OF_ADDABLE> (src));
89 _AssertRepValidType ();
93 template <IInputIterator<T> ITERATOR_OF_ADDABLE>
94 Deque (ITERATOR_OF_ADDABLE&& start, ITERATOR_OF_ADDABLE&& end);
99 explicit Deque (shared_ptr<_IRep>&& src)
noexcept;
100 explicit Deque (
const shared_ptr<_IRep>& src)
noexcept;
105 nonvirtual Deque& operator= (Deque&&) noexcept = default;
106 nonvirtual Deque& operator= (const Deque&) = default;
112 nonvirtual
void AddHead (ArgByValueType<value_type> item);
118 nonvirtual
void push_front (ArgByValueType<value_type> item);
124 nonvirtual value_type RemoveTail ();
130 nonvirtual T pop_back ();
135 nonvirtual value_type Tail () const;
142 nonvirtual T back () const;
147 template <typename T2>
148 using _SafeReadRepAccessor = typename inherited::template _SafeReadRepAccessor<T2>;
153 template <typename T2>
154 using _SafeReadWriteRepAccessor = typename inherited::template _SafeReadWriteRepAccessor<T2>;
157 nonvirtual
void _AssertRepValidType () const;
conditional_t<(sizeof(CHECK_T)<=2 *sizeof(void *)) and is_trivially_copyable_v< CHECK_T >, CHECK_T, const CHECK_T & > ArgByValueType
This is an alias for 'T' - but how we want to pass it on stack as formal parameter.