40 using const_pointer =
typename std::pointer_traits<pointer>::template rebind<const value_type>;
56 friend class GList<T>;
99 _cur = std::move(a_rhs._cur);
110 return std::pointer_traits<pointer>::pointer_to(
operator*());
248 [[nodiscard]]
bool empty() const noexcept
256 for (
auto it =
begin(); it !=
end(); ++it) {
321 while (!a_other.
empty()) {
iterator_base & operator=(const iterator_base &a_rhs)
Definition: GList.h:91
bool operator!=(const iterator_base &a_rhs) const
Definition: GList.h:118
iterator_base operator--(int)
Definition: GList.h:146
static void swap(iterator_base &a_lhs, iterator_base &a_rhs)
Definition: GList.h:86
iterator_base & operator=(iterator_base &&a_rhs)
Definition: GList.h:97
iterator_base()
Definition: GList.h:67
iterator_base(iterator_base &&a_rhs)
Definition: GList.h:80
bool operator==(const iterator_base &a_rhs) const
Definition: GList.h:113
iterator_base(const iterator_base &a_rhs)
Definition: GList.h:76
Node * _cur
Definition: GList.h:154
pointer operator->() const
Definition: GList.h:108
iterator_base & operator--()
Definition: GList.h:139
iterator_base(Node *a_node)
Definition: GList.h:71
reference operator*() const
Definition: GList.h:103
iterator_base & operator++()
Definition: GList.h:124
iterator_base operator++(int)
Definition: GList.h:131
std::ptrdiff_t difference_type
Definition: GList.h:36
value_type & reference
Definition: GList.h:37
iterator end() noexcept
Definition: GList.h:203
iterator_base< T > iterator
Definition: GList.h:157
const_iterator begin() const noexcept
Definition: GList.h:193
T value_type
Definition: GList.h:34
std::size_t size_type
Definition: GList.h:35
iterator erase(const_iterator a_first, const_iterator a_last)
Definition: GList.h:283
const_reference front() const
Definition: GList.h:173
const_iterator cend() const noexcept
Definition: GList.h:213
const_reverse_iterator crbegin() const noexcept
Definition: GList.h:228
const value_type & const_reference
Definition: GList.h:38
value_type * pointer
Definition: GList.h:39
const_reverse_iterator rbegin() const noexcept
Definition: GList.h:223
reference back()
Definition: GList.h:178
GListNode< value_type > _root
Definition: GList.h:328
iterator begin() noexcept
Definition: GList.h:188
iterator erase(const_iterator a_pos)
Definition: GList.h:277
const_reverse_iterator crend() const noexcept
Definition: GList.h:243
const_iterator cbegin() const noexcept
Definition: GList.h:198
typename std::pointer_traits< pointer >::template rebind< const value_type > const_pointer
Definition: GList.h:40
reverse_iterator rbegin() noexcept
Definition: GList.h:218
void push_back(const T &a_value)
Definition: GList.h:289
std::reverse_iterator< iterator > reverse_iterator
Definition: GList.h:159
bool empty() const noexcept
Definition: GList.h:248
size_type size() const noexcept
Definition: GList.h:253
iterator_base< const T > const_iterator
Definition: GList.h:158
std::reverse_iterator< const_iterator > const_reverse_iterator
Definition: GList.h:160
reverse_iterator rend() noexcept
Definition: GList.h:233
const_reverse_iterator rend() const noexcept
Definition: GList.h:238
const_iterator end() const noexcept
Definition: GList.h:208
void pop_front()
Definition: GList.h:313
const_reference back() const
Definition: GList.h:183
reference front()
Definition: GList.h:168
void merge(GList &a_other)
Definition: GList.h:319
void pop_back()
Definition: GList.h:298
void clear() noexcept
Definition: GList.h:262
GList()
Definition: GList.h:162
void push_front(const T &a_value)
Definition: GList.h:304
iterator insert(const_iterator a_pos, const T &a_value)
Definition: GList.h:267
Definition: AbsorbEffect.h:6
void swap(BSTTuple< T1, T2 > &a_lhs, BSTTuple< T1, T2 > &a_rhs) noexcept(noexcept(a_lhs.swap(a_rhs))) requires(std
Definition: BSTTuple.h:212
Definition: EffectArchetypes.h:65
GListNode()
Definition: GList.h:9
GListNode< T > * prev
Definition: GList.h:20
void Remove()
Definition: GList.h:14
GListNode< T > * next
Definition: GList.h:21
std::ptrdiff_t difference_type
Definition: GList.h:45
std::bidirectional_iterator_tag iterator_category
Definition: GList.h:49
U value_type
Definition: GList.h:46
U * pointer
Definition: GList.h:47
U & reference
Definition: GList.h:48