SLIST
Data Structures |
|
| struct | sl_slist_node |
Typedefs |
|
| typedef struct sl_slist_node | sl_slist_node_t |
Functions |
|
| void | sl_slist_init ( sl_slist_node_t **head) |
| void | sl_slist_insert ( sl_slist_node_t *item, sl_slist_node_t *pos) |
| sl_slist_node_t * | sl_slist_pop ( sl_slist_node_t **head) |
| void | sl_slist_push ( sl_slist_node_t **head, sl_slist_node_t *item) |
| void | sl_slist_push_back ( sl_slist_node_t **head, sl_slist_node_t *item) |
| void | sl_slist_remove ( sl_slist_node_t **head, sl_slist_node_t *item) |
| void | sl_slist_sort ( sl_slist_node_t **head, bool(*cmp_fnct)( sl_slist_node_t *item_l, sl_slist_node_t *item_r)) |
Macro Definition Documentation
| #define SL_SLIST_FOR_EACH_ENTRY | ( |
list_head,
|
|
entry,
|
|||
type,
|
|||
member
|
|||
| ) |
Definition at line
54
of file
sl_slist.h
.
Function Documentation
| void sl_slist_init | ( | sl_slist_node_t ** |
head
|
) |
Initializes a singly-linked list.
- Parameters
-
headPointer to pointer of head element of list.
Initializes a singly-linked list.
Definition at line
32
of file
sl_slist.c
.
| void sl_slist_insert | ( | sl_slist_node_t * |
item,
|
| sl_slist_node_t * |
pos
|
||
| ) |
Insert item after given item.
- Parameters
-
itemPointer to item to add. posPointer to item after which the item to add will be inserted.
Insert item after given item.
Definition at line
85
of file
sl_slist.c
.
| sl_slist_node_t * sl_slist_pop | ( | sl_slist_node_t ** |
head
|
) |
Removes and returns first element of list.
- Parameters
-
headPointer to pointer of head element of list.
- Returns
- Pointer to item that was at top of the list.
Removes and returns first element of list.
Definition at line
66
of file
sl_slist.c
.
| void sl_slist_push | ( | sl_slist_node_t ** |
head,
|
| sl_slist_node_t * |
item
|
||
| ) |
Add given item at beginning of list.
- Parameters
-
headPointer to pointer of head element of list. itemPointer to item to add.
Add given item at beginning of list.
Definition at line
40
of file
sl_slist.c
.
| void sl_slist_push_back | ( | sl_slist_node_t ** |
head,
|
| sl_slist_node_t * |
item
|
||
| ) |
Add item at end of list.
- Parameters
-
headPointer to pointer of head element of list. itemPointer to item to add.
Add item at end of list.
Definition at line
50
of file
sl_slist.c
.
| void sl_slist_remove | ( | sl_slist_node_t ** |
head,
|
| sl_slist_node_t * |
item
|
||
| ) |
Remove item from list.
- Parameters
-
headPointer to pointer of head element of list. itemPointer to item to remove.
- Note
- (1) An EFM_ASSERT is thrown if the item is not found within the list.
Remove item from list.
Definition at line
95
of file
sl_slist.c
.
| void sl_slist_sort | ( | sl_slist_node_t ** |
head,
|
| bool(*)( sl_slist_node_t *item_l, sl_slist_node_t *item_r) |
cmp_fnct
|
||
| ) |
Sorts list items.
- Parameters
-
headPointer to pointer of head element of list. cmp_fnctPointer to function to use for sorting the list. item_l Pointer to left item. item_r Pointer to right item. Returns whether the two items are ordered (true) or not (false).
Sorts list items.
Definition at line
113
of file
sl_slist.c
.