ListNodePrev
Description
Get item before (prev to) given list item
Parameters
| Name | Direction | Description |
|---|---|---|
item |
in | List node to get previous node of, in the list. |
Success
Node before given item in list.
Failure
NULL
Usage example (Cross-references)
Usage examples (Cross-references)
result = result && ListNodeNext(ListNodeBegin(&list)) && ListNodeData(ListNodeNext(ListNodeBegin(&list))) &&
(*ListNodeData(ListNodeNext(ListNodeBegin(&list))) == 20);
result = result && ListNodePrev(ListNodeEnd(&list)) && ListNodeData(ListNodePrev(ListNodeEnd(&list))) &&
(*ListNodeData(ListNodePrev(ListNodeEnd(&list))) == 30);
result = result && (same == begin); (*ListNodeData(ListNodeNext(ListNodeBegin(&list))) == 20);
result = result && ListNodePrev(ListNodeEnd(&list)) && ListNodeData(ListNodePrev(ListNodeEnd(&list))) &&
(*ListNodeData(ListNodePrev(ListNodeEnd(&list))) == 30);
result = result && (same == begin);
result = result && rel_f2 && ListNodeData(rel_f2) && (*(int *)ListNodeData(rel_f2) == 30); result = result && (ListNodeRelative(ListNodeEnd(&list), 1) == NULL);
result = result && (ListNodeNext(null_node) == NULL);
result = result && (ListNodePrev(null_node) == NULL);
ListDeinit(&list);- In
Foreach.h:104:
if ((ValidateList(UNPL(pl)), 1) && (UNPL(pl)->tail)) \
for (GenericListNode * UNPL(node) = (GenericListNode *)ListNodeEnd(UNPL(pl)); UNPL(node); \
UNPL(node) = ListNodePrev(UNPL(node))) \
if (((void *)UNPL(node)->next != (void *)UNPL(node)) && \
((void *)UNPL(node)->prev != (void *)UNPL(node)) && (UNPL(node)->data)) \
- In
Foreach.h:138:
if ((ValidateList(UNPL(pl)), 1) && (UNPL(pl)->tail)) \
for (GenericListNode * UNPL(node) = (GenericListNode *)ListNodeEnd(UNPL(pl)); UNPL(node); \
UNPL(node) = ListNodePrev(UNPL(node))) \
if (((void *)UNPL(node)->next != (void *)UNPL(node)) && \
((void *)UNPL(node)->prev != (void *)UNPL(node)) && (UNPL(node)->data)) \
- In
Foreach.h:246:
if ((ValidateList(UNPL(pl)), 1) && UNPL(pl)->tail) \
for (GenericListNode * UNPL(node) = (GenericListNode *)ListNodeEnd(UNPL(pl)); UNPL(node); \
UNPL(node) = ListNodePrev(UNPL(node))) \
for (u64 UNPL(i) = 0; UNPL(node) && UNPL(i) < (end); UNPL(node) = ListNodePrev(UNPL(node)), ++UNPL(i)) \
if (UNPL(i) >= (start) && (UNPL(node)->data)) \
- In
Foreach.h:247:
for (GenericListNode * UNPL(node) = (GenericListNode *)ListNodeEnd(UNPL(pl)); UNPL(node); \
UNPL(node) = ListNodePrev(UNPL(node))) \
for (u64 UNPL(i) = 0; UNPL(node) && UNPL(i) < (end); UNPL(node) = ListNodePrev(UNPL(node)), ++UNPL(i)) \
if (UNPL(i) >= (start) && (UNPL(node)->data)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
- In
Foreach.h:284:
if ((ValidateList(UNPL(pl)), 1) && UNPL(pl)->tail) \
for (GenericListNode * UNPL(node) = (GenericListNode *)ListNodeEnd(UNPL(pl)); UNPL(node); \
UNPL(node) = ListNodePrev(UNPL(node))) \
for (u64 UNPL(i) = 0; UNPL(node) && UNPL(i) < (end); UNPL(node) = ListNodePrev(UNPL(node)), ++UNPL(i)) \
if (UNPL(i) >= (start) && (UNPL(node)->data)) \
- In
Foreach.h:285:
for (GenericListNode * UNPL(node) = (GenericListNode *)ListNodeEnd(UNPL(pl)); UNPL(node); \
UNPL(node) = ListNodePrev(UNPL(node))) \
for (u64 UNPL(i) = 0; UNPL(node) && UNPL(i) < (end); UNPL(node) = ListNodePrev(UNPL(node)), ++UNPL(i)) \
if (UNPL(i) >= (start) && (UNPL(node)->data)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
Last updated on