75#define NIL_LIST static_cast<LIST>(nullptr)
91#define iterate(l) for (; (l) != nullptr; (l) = (l)->list_rest())
101#define set_rest(l, cell) ((l)->next = (cell))
119 auto var_list =
this;
LIST delete_d(LIST list, void *key, int_compare is_equal)
LIST push_last(LIST list, void *item)
LIST search(LIST list, void *key, int_compare is_equal)
LIST push(LIST list, void *element)
void destroy_nodes(LIST list, void_dest destructor)
void(*)(void *) void_dest
int(*)(void *, void *) int_compare