Lines Matching refs:NAME
505 #define INSERT_LIST(NAME, TYPE) \
506 void insert_##NAME##_list(TYPE **list, TYPE *entry) { \
508 entry->NAME##_next = *list; \
509 entry->NAME##_prev = (*list)->NAME##_prev; \
510 (*list)->NAME##_prev->NAME##_next = entry; \
511 (*list)->NAME##_prev = entry; \
514 entry->NAME##_prev = entry->NAME##_next = entry; \
519 #define REMOVE_LIST(NAME, TYPE) \
520 void remove_##NAME##_list(TYPE **list, TYPE *entry) { \
521 if(entry->NAME##_prev == entry && entry->NAME##_next == entry) { \
524 } else if(entry->NAME##_prev != NULL && entry->NAME##_next != NULL) { \
526 entry->NAME##_next->NAME##_prev = entry->NAME##_prev; \
527 entry->NAME##_prev->NAME##_next = entry->NAME##_next; \
529 *list = entry->NAME##_next; \
531 entry->NAME##_prev = entry->NAME##_next = NULL; \