65 int uproc_list_get_safe(
const uproc_list *list,
long index,
void *value,
73 #define uproc_list_get(list, index, value) \
74 uproc_list_get_safe((list), (index), (value), sizeof *(value))
76 size_t uproc_list_get_all_safe(
const uproc_list *list,
void *buf,
size_t sz,
92 #define uproc_list_get_all(list, buf, sz) \
93 uproc_list_get_all_safe((list), (buf), (sz), sizeof *(buf))
95 int uproc_list_set_safe(
uproc_list *list,
long index,
const void *value,
104 #define uproc_list_set(list, index, value) \
105 uproc_list_set_safe((list), (index), (value), sizeof *(value))
107 int uproc_list_append_safe(
uproc_list *list,
const void *value,
115 #define uproc_list_append(list, value) \
116 uproc_list_append_safe((list), (value), sizeof *(value))
118 int uproc_list_extend_safe(
uproc_list *list,
const void *values,
long n,
127 #define uproc_list_extend(list, values, n) \
128 uproc_list_extend_safe((list), (values), (n), sizeof *(values))
137 int uproc_list_pop_safe(
uproc_list *list,
void *value,
size_t value_size);
144 #define uproc_list_pop(list, value) \
145 uproc_list_pop_safe((list), (value), sizeof *(value))
List of homogenous items (also known as "vector" or "arraylist")
void uproc_list_clear(uproc_list *list)
Remove all items.
int uproc_list_add(uproc_list *list, const uproc_list *src)
Append all elements of another list.
void uproc_list_map(const uproc_list *list, void(*func)(void *, void *), void *opaque)
Apply function to all items.
void uproc_list_destroy(uproc_list *list)
Destroy list object.
uproc_list * uproc_list_create(size_t value_size)
Create an empty list.
long uproc_list_size(const uproc_list *list)
Returns the number of items.