ListNodeAt
Description
Node at given index in list
Parameters
| Name | Direction | Description |
|---|---|---|
l |
in | List to get node from |
idx |
in | Index to fetch node at. |
Success
Node in given list at given index.
Failure
Empty node struct.
Usage example (Cross-references)
Usage examples (Cross-references)
result = result && begin && ListNodeData(begin) && (*(int *)ListNodeData(begin) == 10);
result = result && end && ListNodeData(end) && (*(int *)ListNodeData(end) == 40);
result = result && ListNodeData(&ListNodeAt(&list, 2)) && (*ListNodeData(&ListNodeAt(&list, 2)) == 30);
result = result && ListNodeData(&ListNodeFirst(&list)) && (*ListNodeData(&ListNodeFirst(&list)) == 10);
result = result && ListNodeData(&ListNodeLast(&list)) && (*ListNodeData(&ListNodeLast(&list)) == 40);
static bool test_list_node_at_out_of_bounds_fails(void) {
WriteFmt("Testing ListNodeAt out of bounds\n");
List(int) list = ListInit(get_test_alloc()); List(int) list = ListInit(get_test_alloc());
ListPushBackR(&list, 10);
(void)ListNodeAt(&list, 1);
return false;
static bool test_list_node_at_empty_fails(void) {
WriteFmt("Testing ListNodeAt on empty list\n");
List(int) list = ListInit(get_test_alloc());
List(int) list = ListInit(get_test_alloc());
(void)ListNodeAt(&list, 0);
return false;- In
Access.h:261:
/// TAGS: List, First, Node, Access
///
#define ListNodeFirst(l) ListNodeAt((l), 0)
///
- In
Access.h:273:
/// TAGS: List, Last, Node, Access
///
#define ListNodeLast(l) ListNodeAt((l), (l)->length - 1)
///
Last updated on