2#ifndef HORIZON_CORE_STRUCTURES_LINKEDLIST_HEAD_HPP
3#define HORIZON_CORE_STRUCTURES_LINKEDLIST_HEAD_HPP
168 return (!(*
this == _Right));
173 return (
_Ptr != _Right);
178 return (!(*
this == _Right));
183 return (
_Ptr == &_Right);
188 return (
_Ptr != &_Right);
This class is used to manage a linked list of Elements. It is not intended to be used directly....
Definition: Element.hpp:18
void push_after(Element *pElem)
Pushes this Element after the given Element.
Definition: Element.hpp:75
Element * _next
Definition: Element.hpp:22
Element * next()
Returns the next Element in the list.
Definition: Element.hpp:36
void push_before(Element *pElem)
Pushes this Element before the given Element.
Definition: Element.hpp:64
Element * _prev
Definition: Element.hpp:23
bool operator==(pointer const &_Right) const
Definition: Head.hpp:171
_Ty value_type
Definition: Head.hpp:99
Iterator operator++(int)
Definition: Head.hpp:141
bool operator==(Iterator const &_Right) const
Definition: Head.hpp:161
pointer _Ptr
Definition: Head.hpp:197
_Ty * pointer
Definition: Head.hpp:100
Iterator(pointer _Pnode)
Definition: Head.hpp:109
Iterator & operator=(const_pointer const &_Right)
Definition: Head.hpp:119
Iterator & operator--()
Definition: Head.hpp:148
_Ty & reference
Definition: Head.hpp:102
bool operator!=(const_reference _Right) const
Definition: Head.hpp:186
Iterator & operator++()
Definition: Head.hpp:135
Iterator()
Definition: Head.hpp:105
Iterator & operator=(Iterator const &_Right)
Definition: Head.hpp:113
reference operator*()
Definition: Head.hpp:125
pointer _Mynode()
Definition: Head.hpp:191
std::bidirectional_iterator_tag iterator_category
Definition: Head.hpp:98
Iterator operator--(int)
Definition: Head.hpp:154
_Ty const & const_reference
Definition: Head.hpp:103
bool operator!=(Iterator const &_Right) const
Definition: Head.hpp:166
bool operator==(const_reference _Right) const
Definition: Head.hpp:181
bool operator!=(pointer const &_Right) const
Definition: Head.hpp:176
_Ty const * const_pointer
Definition: Head.hpp:101
pointer operator->()
Definition: Head.hpp:130
LinkedList Head class. This class is used to manage a linked list of Elements. It is used as a base c...
Definition: Head.hpp:26
Head(Head const &)=delete
Element * last()
Returns the last Element in the list.
Definition: Head.hpp:50
uint32_t get_size() const
returns the number of Elements in the list (not including the head and tail Elements or the first and...
Definition: Head.hpp:69
Iterator< Element > iterator
Definition: Head.hpp:200
Head()
Definition: Head.hpp:33
Element const * last() const
Definition: Head.hpp:51
uint32_t _size
Definition: Head.hpp:30
Element _first
Definition: Head.hpp:28
Element _last
Definition: Head.hpp:29
bool is_empty() const
Returns true if the list is empty.
Definition: Head.hpp:43
void push_front(Element *pElem)
push_front() and push_back() are used to add an Element to the list.
Definition: Head.hpp:56
Head & operator=(Head const &)=delete
void dec_size()
Definition: Head.hpp:89
~Head()
Definition: Head.hpp:207
void push_back(Element *pElem)
Definition: Head.hpp:63
void inc_size()
Definition: Head.hpp:88
Element const * first() const
Definition: Head.hpp:47
Element * first()
Returns the first Element in the list.
Definition: Head.hpp:46
Definition: Element.hpp:7