Embedded Template Library 1.0
|
Template deduction guides. More...
#include <forward_list.h>
Public Types | |
typedef T | value_type |
typedef T * | pointer |
typedef const T * | const_pointer |
typedef T & | reference |
typedef const T & | const_reference |
typedef size_t | size_type |
typedef etl::iforward_list< T >::data_node_t | pool_type |
![]() | |
typedef T | value_type |
typedef T * | pointer |
typedef const T * | const_pointer |
typedef T & | reference |
typedef const T & | const_reference |
typedef size_t | size_type |
typedef etl::iterator_traits< iterator >::difference_type | difference_type |
![]() | |
typedef size_t | size_type |
The type used for determining the size of forward_list. | |
Public Member Functions | |
forward_list_ext () | |
Default constructor. | |
forward_list_ext (etl::ipool &node_pool) | |
Default constructor. | |
forward_list_ext (size_t initial_size, etl::ipool &node_pool) | |
Construct from size. | |
forward_list_ext (size_t initial_size, const T &value, etl::ipool &node_pool) | |
Construct from size and value. | |
forward_list_ext (const forward_list_ext &other) | |
Copy constructor. Implicit pool. | |
forward_list_ext (const forward_list_ext &other, etl::ipool &node_pool) | |
Copy constructor. Explicit pool. | |
template<typename TIterator > | |
forward_list_ext (TIterator first, TIterator last, etl::ipool &node_pool, typename etl::enable_if<!etl::is_integral< TIterator >::value, int >::type=0) | |
Construct from range. | |
~forward_list_ext () | |
Destructor. | |
forward_list_ext & | operator= (const forward_list_ext &rhs) |
Assignment operator. | |
void | set_pool (etl::ipool &pool) |
Set the pool instance. | |
etl::ipool & | get_pool () const |
Get the pool instance. | |
![]() | |
iterator | begin () |
Gets the beginning of the forward_list. | |
const_iterator | begin () const |
Gets the beginning of the forward_list. | |
iterator | before_begin () |
Gets before the beginning of the forward_list. | |
const_iterator | before_begin () const |
Gets before the beginning of the forward_list. | |
const_iterator | cbegin () const |
Gets the beginning of the forward_list. | |
iterator | end () |
Gets the end of the forward_list. | |
const_iterator | end () const |
Gets the end of the forward_list. | |
const_iterator | cend () const |
Gets the end of the forward_list. | |
void | clear () |
Clears the forward_list. | |
reference | front () |
Gets a reference to the first element. | |
const_reference | front () const |
Gets a const reference to the first element. | |
template<typename TIterator > | |
void | assign (TIterator first, TIterator last, typename etl::enable_if<!etl::is_integral< TIterator >::value, int >::type=0) |
void | assign (size_t n, const T &value) |
Assigns 'n' copies of a value to the forward_list. | |
void | push_front (const T &value) |
Pushes a value to the front of the forward_list. | |
template<typename T1 > | |
reference | emplace_front (const T1 &value1) |
Emplaces a value to the front of the list.. | |
template<typename T1 , typename T2 > | |
reference | emplace_front (const T1 &value1, const T2 &value2) |
Emplaces a value to the front of the list.. | |
template<typename T1 , typename T2 , typename T3 > | |
reference | emplace_front (const T1 &value1, const T2 &value2, const T3 &value3) |
Emplaces a value to the front of the list.. | |
template<typename T1 , typename T2 , typename T3 , typename T4 > | |
reference | emplace_front (const T1 &value1, const T2 &value2, const T3 &value3, const T4 &value4) |
Emplaces a value to the front of the list.. | |
void | pop_front () |
Removes a value from the front of the forward_list. | |
void | resize (size_t n) |
Resizes the forward_list. | |
void | resize (size_t n, T value) |
iterator | insert_after (const_iterator position, const T &value) |
Inserts a value to the forward_list after the specified position. | |
template<typename T1 > | |
iterator | emplace_after (const_iterator position, const T1 &value1) |
Emplaces a value to the forward_list after the specified position. | |
template<typename T1 , typename T2 > | |
iterator | emplace_after (const_iterator position, const T1 &value1, const T2 &value2) |
Emplaces a value to the forward_list after the specified position. | |
template<typename T1 , typename T2 , typename T3 > | |
iterator | emplace_after (const_iterator position, const T1 &value1, const T2 &value2, const T3 &value3) |
Emplaces a value to the forward_list after the specified position. | |
template<typename T1 , typename T2 , typename T3 , typename T4 > | |
iterator | emplace_after (const_iterator position, const T1 &value1, const T2 &value2, const T3 &value3, const T4 &value4) |
Emplaces a value to the forward_list after the specified position. | |
iterator | insert_after (const_iterator position, size_t n, const T &value) |
Inserts 'n' copies of a value to the forward_list after the specified position. | |
template<typename TIterator > | |
iterator | insert_after (const_iterator position, TIterator first, TIterator last, typename etl::enable_if<!etl::is_integral< TIterator >::value, int >::type=0) |
Inserts a range of values to the forward_list after the specified position. | |
iterator | erase_after (iterator position) |
Erases the value at the specified position. | |
iterator | erase_after (const_iterator position) |
Erases the value at the specified position. | |
iterator | erase_after (const_iterator first, const_iterator last) |
Erases a range of elements. | |
void | move_after (const_iterator from_before, const_iterator to_before) |
void | move_after (const_iterator first_before, const_iterator last, const_iterator to_before) |
void | unique () |
template<typename TIsEqual > | |
void | unique (TIsEqual isEqual) |
void | sort () |
template<typename TCompare > | |
void | sort (TCompare compare) |
void | remove (const T &value) |
template<typename TPredicate > | |
void | remove_if (TPredicate predicate) |
Removes according to a predicate. | |
iforward_list & | operator= (const iforward_list &rhs) |
Assignment operator. | |
![]() | |
bool | has_shared_pool () const |
true if the list has a shared pool. | |
size_type | max_size () const |
Gets the maximum possible size of the forward_list. | |
size_type | capacity () const |
Gets the maximum possible size of the forward_list. | |
size_type | size () const |
Gets the size of the forward_list. | |
bool | empty () const |
Checks to see if the forward_list is empty. | |
bool | full () const |
Checks to see if the forward_list is full. | |
size_t | available () const |
void | reverse () |
Reverses the forward_list. | |
Additional Inherited Members | |
![]() | |
iforward_list (bool pool_is_shared_) | |
Constructor. | |
iforward_list (etl::ipool &node_pool, size_t max_size_, bool pool_is_shared_) | |
Constructor. | |
void | initialise () |
Initialise the forward_list. | |
data_node_t & | allocate_data_node (const_reference value) |
Allocate a data_node_t. | |
~iforward_list () | |
Destructor. | |
![]() | |
forward_list_base (bool pool_is_shared_) | |
The constructor that is called from derived classes. | |
forward_list_base (etl::ipool &node_pool_, size_type max_size_, bool pool_is_shared_) | |
The constructor that is called from derived classes. | |
~forward_list_base () | |
Destructor. | |
node_t * | get_head () |
Get the head node. | |
const node_t * | get_head () const |
Get the head node. | |
void | insert_node_after (node_t &position, node_t &node) |
Insert a node. | |
bool | is_trivial_list () const |
Is the forward_list a trivial length? | |
void | join (node_t *left, node_t *right) |
Join two nodes. | |
void | set_node_pool (etl::ipool &node_pool_) |
Set the node pool instance. | |
etl::ipool * | get_node_pool () |
Get the node pool instance. | |
![]() | |
node_t | start_node |
The node that acts as the forward_list start. | |
etl::ipool * | p_node_pool |
The pool of data nodes used in the list. | |
size_type | MAX_SIZE |
The maximum size of the forward_list. | |
bool | pool_is_shared |
If true then the pool is shared between lists. | |
Template deduction guides.
Make A templated forward_list implementation that uses a fixed size pool.