LIST_DATA_TYPE
- Macro
- October 8, 2025
Table of Contents
LIST_DATA_TYPE
LIST_DATA_TYPE
Description
Get data type stored by this list
Usage example (Cross-references)
- In
Insert.h:46
:
do { \
ValidateList(l); \
LIST_DATA_TYPE(l) * UNPL(_ptrval) = &(lval); \
LIST_DATA_TYPE(l) UNPL(_tmpval) = *UNPL(_ptrval); \
insert_into_list(GENERIC_LIST(l), UNPL(_ptrval), sizeof(LIST_DATA_TYPE(l)), (idx)); \
- In
Insert.h:47
:
ValidateList(l); \
LIST_DATA_TYPE(l) * UNPL(_ptrval) = &(lval); \
LIST_DATA_TYPE(l) UNPL(_tmpval) = *UNPL(_ptrval); \
insert_into_list(GENERIC_LIST(l), UNPL(_ptrval), sizeof(LIST_DATA_TYPE(l)), (idx)); \
if (!(l)->copy_init) { \
- In
Insert.h:48
:
LIST_DATA_TYPE(l) * UNPL(_ptrval) = &(lval); \
LIST_DATA_TYPE(l) UNPL(_tmpval) = *UNPL(_ptrval); \
insert_into_list(GENERIC_LIST(l), UNPL(_ptrval), sizeof(LIST_DATA_TYPE(l)), (idx)); \
if (!(l)->copy_init) { \
memset(UNPL(_ptrval), 0, sizeof(LIST_DATA_TYPE(l))); \
- In
Insert.h:50
:
insert_into_list(GENERIC_LIST(l), UNPL(_ptrval), sizeof(LIST_DATA_TYPE(l)), (idx)); \
if (!(l)->copy_init) { \
memset(UNPL(_ptrval), 0, sizeof(LIST_DATA_TYPE(l))); \
} \
} while (0)
- In
Insert.h:82
:
do { \
ValidateList(l); \
LIST_DATA_TYPE(l) UNPL(_rval) = (rval); \
insert_into_list(GENERIC_LIST(l), (char *)&UNPL(_rval), sizeof(LIST_DATA_TYPE(l)), (idx)); \
} while (0)
- In
Insert.h:83
:
ValidateList(l); \
LIST_DATA_TYPE(l) UNPL(_rval) = (rval); \
insert_into_list(GENERIC_LIST(l), (char *)&UNPL(_rval), sizeof(LIST_DATA_TYPE(l)), (idx)); \
} while (0)
- In
Insert.h:190
:
do { \
ValidateList(l); \
LIST_DATA_TYPE(l) * UNPL(_ptrval) = (arr); \
const LIST_DATA_TYPE(l) UNPL(_tmpval) = *UNPL(_ptrval); \
(void)UNPL(_tmpval); \
- In
Insert.h:191
:
ValidateList(l); \
LIST_DATA_TYPE(l) * UNPL(_ptrval) = (arr); \
const LIST_DATA_TYPE(l) UNPL(_tmpval) = *UNPL(_ptrval); \
(void)UNPL(_tmpval); \
push_arr_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)), UNPL(_ptrval), (count)); \
- In
Insert.h:193
:
const LIST_DATA_TYPE(l) UNPL(_tmpval) = *UNPL(_ptrval); \
(void)UNPL(_tmpval); \
push_arr_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)), UNPL(_ptrval), (count)); \
if (!(l)->copy_init) { \
memset(UNPL(_ptrval), 0, sizeof(LIST_DATA_TYPE(l))); \
- In
Insert.h:195
:
push_arr_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)), UNPL(_ptrval), (count)); \
if (!(l)->copy_init) { \
memset(UNPL(_ptrval), 0, sizeof(LIST_DATA_TYPE(l))); \
} \
} while (0)
- In
Insert.h:215
:
ValidateList(l2); \
{ \
LIST_DATA_TYPE(l) UNPL(_tmp1) = {0}; \
LIST_DATA_TYPE(l2) UNPL(_tmp2) = {0}; \
UNPL(_tmp1) = UNPL(_tmp2); \
- In
Insert.h:216
:
{ \
LIST_DATA_TYPE(l) UNPL(_tmp1) = {0}; \
LIST_DATA_TYPE(l2) UNPL(_tmp2) = {0}; \
UNPL(_tmp1) = UNPL(_tmp2); \
(void)UNPL(_tmp1); \
- In
Insert.h:221
:
(void)UNPL(_tmp2); \
} \
merge_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)), GENERIC_LIST(l2)); \
if (!(l)->copy_init) { \
GenericCopyDeinit cd = (l2)->copy_deinit; \
- In
Insert.h:246
:
ValidateList(l2); \
{ \
LIST_DATA_TYPE(l) UNPL(_tmp1) = {0}; \
LIST_DATA_TYPE(l2) UNPL(_tmp2) = {0}; \
UNPL(_tmp1) = UNPL(_tmp2); \
- In
Insert.h:247
:
{ \
LIST_DATA_TYPE(l) UNPL(_tmp1) = {0}; \
LIST_DATA_TYPE(l2) UNPL(_tmp2) = {0}; \
UNPL(_tmp1) = UNPL(_tmp2); \
(void)UNPL(_tmp1); \
- In
Insert.h:252
:
(void)UNPL(_tmp2); \
} \
merge_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)), GENERIC_LIST(l2)); \
} while (0)
- In
Ops.h:20
:
/// FAILURE: NULL
///
#define ListClear(l) clear_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)))
///
- In
Ops.h:31
:
/// FAILURE: Returns NULL otherwise.
///
#define ListSort(l, compare) qsort_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)), (compare))
///
- In
Ops.h:41
:
/// FAILURE: NULL
///
#define ListReverse(l) reverse_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)))
#endif // MISRA_STD_CONTAINER_LIST_OPS_H
- In
Remove.h:24
:
///
#define ListRemove(l, val, idx) \
remove_range_list(GENERIC_LIST(l), (val), sizeof(LIST_DATA_TYPE(l)), ((l)->length - 1), 1)
///
- In
Remove.h:64
:
///
#define ListRemoveRange(l, rd, start, count) \
remove_range_list(GENERIC_LIST(l), (rd), sizeof(LIST_DATA_TYPE(l)), (start), (count))
///
- In
Type.h:73
:
/// Get node type stored by this list
///
#define LIST_NODE_TYPE(list) ListNode(LIST_DATA_TYPE(list))
///
- In
Init.h:51
:
#endif
#define ListDeinit(v) deinit_list(GENERIC_LIST(v), sizeof(LIST_DATA_TYPE(v)))
#endif // MISRA_STD_CONTAINER_LIST_H
- In
Access.h:21
:
/// FAILURE: NULL
///
#define ListSwapItems(l, idx1, idx2) swap_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)), (idx1), (idx2))
///
- In
Access.h:32
:
/// FAILURE: `NULL`
///
#define ListPtrAt(l, idx) ((LIST_DATA_TYPE(l) *)item_ptr_at_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)), (idx)))
#ifdef __cplusplus
- In
Access.h:35
:
#ifdef __cplusplus
# define ListAt(l, idx) (ListPtrAt((l), (idx)) ? *ListPtrAt((l), (idx)) : (LIST_DATA_TYPE(l) {0}))
#else
///
- In
Access.h:48
:
/// FAILURE: Emtpy object.
///
# define ListAt(l, idx) (ListPtrAt((l), (idx)) ? *ListPtrAt((l), (idx)) : ((LIST_DATA_TYPE(l)) {0}))
#endif
- In
Access.h:80
:
/// FAILURE: `NULL`
///
#define ListNodePtrAt(l, idx) ((LIST_NODE_TYPE(l) *)(node_at_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)), (idx))))
///
- In
Access.h:111
:
/// FAILURE: Empty node struct.
///
#define ListNodeAt(l, idx) *((LIST_NODE_TYPE(l) *)(node_at_list(GENERIC_LIST(l), sizeof(LIST_DATA_TYPE(l)), (idx))))
///
- In
Foreach.h:34
:
((void *)UNPL(node)->prev != (void *)UNPL(node)) && (UNPL(node)->data)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) var = *((LIST_DATA_TYPE(UNPL(pl)) *)(UNPL(node)->data)); \
UNPL(_once); \
UNPL(_once) = false)
- In
Foreach.h:61
:
((void *)UNPL(node)->prev != (void *)UNPL(node)) && (UNPL(node)->data)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) *var = (LIST_DATA_TYPE(UNPL(pl)) *)(UNPL(node)->data); \
UNPL(_once); \
UNPL(_once) = false)
- In
Foreach.h:88
:
((void *)UNPL(node)->prev != (void *)UNPL(node)) && (UNPL(node)->data)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) var = *((LIST_DATA_TYPE(UNPL(pl)) *)(UNPL(node)->data)); \
UNPL(_once); \
UNPL(_once) = false)
- In
Foreach.h:115
:
((void *)UNPL(node)->prev != (void *)UNPL(node)) && (UNPL(node)->data)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) *var = (LIST_DATA_TYPE(UNPL(pl)) *)(UNPL(node)->data); \
UNPL(_once); \
UNPL(_once) = false)
- In
Foreach.h:145
:
if (UNPL(i) >= (start) && (UNPL(node)->data)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) var = *((LIST_DATA_TYPE(UNPL(pl)) *)(UNPL(node)->data)); \
UNPL(_once); \
UNPL(_once) = false)
- In
Foreach.h:172
:
if (UNPL(i) >= (start) && (UNPL(node)->data)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) *var = (LIST_DATA_TYPE(UNPL(pl)) *)(UNPL(node)->data); \
UNPL(_once); \
UNPL(_once) = false)
- In
Foreach.h:201
:
if (UNPL(i) >= (start) && (UNPL(node)->data)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) var = *((LIST_DATA_TYPE(UNPL(pl)) *)(UNPL(node)->data)); \
UNPL(_once); \
UNPL(_once) = false)
- In
Foreach.h:231
:
if (UNPL(i) >= (start) && (UNPL(node)->data)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) *var = (LIST_DATA_TYPE(UNPL(pl)) *)(UNPL(node)->data); \
UNPL(_once); \
UNPL(_once) = false)
- In
Foreach.h:272
:
UNPL(pidx) = ++idx, UNPL(node) = UNPL(next)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) var = *((LIST_DATA_TYPE(UNPL(pl)) *)(UNPL(next)->data)); \
UNPL(_once); \
UNPL(_once) = false)
- In
Foreach.h:313
:
UNPL(pidx) = ++idx, UNPL(node) = UNPL(next)) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) *var = UNPL(next)->data; UNPL(_once); UNPL(_once) = false)
///
- In
Foreach.h:355
:
UNPL(node) = UNPL(next), UNPL(pidx) = idx) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) var = *((LIST_DATA_TYPE(UNPL(pl)) *)(UNPL(next)->data)); \
UNPL(_once); \
UNPL(_once) = false) \
- In
Foreach.h:405
:
UNPL(node) = UNPL(next), UNPL(pidx) = idx) \
for (bool UNPL(_once) = true; UNPL(_once); UNPL(_once) = false) \
for (LIST_DATA_TYPE(UNPL(pl)) *var = UNPL(next)->data; UNPL(_once); UNPL(_once) = false) \
for (bool UNPL(_update) = true; UNPL(_update); \
UNPL(_update) = false, \