Iridescence 1.00
Embedded Graphic Framework
Loading...
Searching...
No Matches
static_list< S, T > Class Template Reference

static_list is a specialization of the list class. It pre-allocates all elements in the list. It is useful in embedded systems without a dynamic memory allocator or without an MMU. More...

#include <ds_types_list.h>

Inheritance diagram for static_list< S, T >:
[legend]

Public Member Functions

 static_list (const list< T > &rhs)
 
list< T > & operator= (const list< T > &rhs)
 
- Public Member Functions inherited from list< T >
 list ()
 Creates a list object and initializes it to an empty linked list.
 
 list (const list &rhs)=delete
 
void clear (void)
 Clears all the elements of a list and frees them.
 
size_t size (void) const
 Returns the number of elements in the list.
 
bool insertAtPos (const T &value, size_t pos)
 Inserts an element at a specified position.
 
bool insertFront (const T &value)
 Inserts an element at the front of the list.
 
bool append (const T &value)
 Inserts an element at the end of the list.
 
bool insertOrdered (const T &value, const lambda< bool(const T &left, const T &right)> &compare_fn)
 Performs an ordered inserts of an element in the list.
 
void removeCurrent (bool move_to_next)
 Removes the element pointer to by the internal pointer.
 
void removeAtPos (size_t pos)
 Removes the element at the specified position.
 
bool remove (const T &value)
 Removes the first matched element.
 
T & operator[] (size_t pos)
 Access operator [].
 
T * findElement (const T &value)
 Searches for the first element matching the specified value.
 
int32_t findIndex (const T &value)
 Searches for the first element matching the specified value.
 
int32_t findIndex (const lambda< bool(const T &item)> &equals)
 Searches for the first element matching the specified value. Uses a lambda to perform the matching.
 
void startFirst (void)
 Initializes the internal element pointer to the first one in the list.
 
void startLast (void)
 Initializes the internal element pointer to the last one in the list.
 
void goNext (void)
 Advances the internal element pointer to the next one (going forward).
 
void goPrevious (void)
 Advances the internal element pointer to the previous one (going backward).
 
bool valid (void) const
 Is the internal element pointer valid?
 
T & current (void)
 Returns the element pointed by the internal pointer. If the internal pointer is not valid it will likely cause a crash.
 

Additional Inherited Members

- Protected Member Functions inherited from list< T >
virtual void freeNode (Node *node)=0
 

Detailed Description

template<size_t S, typename T>
class static_list< S, T >

static_list is a specialization of the list class. It pre-allocates all elements in the list. It is useful in embedded systems without a dynamic memory allocator or without an MMU.


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