Embedded Template Library 1.0
Loading...
Searching...
No Matches
etl::forward_list_ext< T > Class Template Reference

Template deduction guides. More...

#include <forward_list.h>

Public Types

typedef T value_type
 
typedef Tpointer
 
typedef const Tconst_pointer
 
typedef Treference
 
typedef const Tconst_reference
 
typedef size_t size_type
 
typedef etl::iforward_list< T >::data_node_t pool_type
 
- Public Types inherited from etl::iforward_list< T >
typedef T value_type
 
typedef Tpointer
 
typedef const Tconst_pointer
 
typedef Treference
 
typedef const Tconst_reference
 
typedef size_t size_type
 
typedef etl::iterator_traits< iterator >::difference_type difference_type
 
- Public Types inherited from etl::forward_list_base
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_extoperator= (const forward_list_ext &rhs)
 Assignment operator.
 
void set_pool (etl::ipool &pool)
 Set the pool instance.
 
etl::ipoolget_pool () const
 Get the pool instance.
 
- Public Member Functions inherited from etl::iforward_list< T >
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.
 
reference emplace_front ()
 Emplaces a value to the front of the 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.
 
iterator emplace_after (const_iterator position)
 Emplaces 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_listoperator= (const iforward_list &rhs)
 Assignment operator.
 
- Public Member Functions inherited from etl::forward_list_base
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

- Protected Member Functions inherited from etl::iforward_list< T >
 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_tallocate_data_node (const_reference value)
 Allocate a data_node_t.
 
 ~iforward_list ()
 Destructor.
 
- Protected Member Functions inherited from etl::forward_list_base
 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_tget_head ()
 Get the head node.
 
const node_tget_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::ipoolget_node_pool ()
 Get the node pool instance.
 
- Protected Attributes inherited from etl::forward_list_base
node_t start_node
 The node that acts as the forward_list start.
 
etl::ipoolp_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.
 
 ETL_DECLARE_DEBUG_COUNT
 Internal debugging.
 

Detailed Description

template<typename T>
class etl::forward_list_ext< T >

Template deduction guides.

Make A templated forward_list implementation that uses a fixed size pool.

Note
'merge' and 'splice_after' and are not supported.

The documentation for this class was generated from the following file: