Lines Matching +full:copy +full:- +full:item
7 * copy of this software and associated documentation files (the
9 * without limitation the rights to use, copy, modify, merge, publish,
16 * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
47 static inline void list_inithead(struct list_head *item) in list_inithead() argument
49 item->prev = item; in list_inithead()
50 item->next = item; in list_inithead()
53 static inline void list_add(struct list_head *item, struct list_head *list) in list_add() argument
55 item->prev = list; in list_add()
56 item->next = list->next; in list_add()
57 list->next->prev = item; in list_add()
58 list->next = item; in list_add()
61 static inline void list_addtail(struct list_head *item, struct list_head *list) in list_addtail() argument
63 item->next = list; in list_addtail()
64 item->prev = list->prev; in list_addtail()
65 list->prev->next = item; in list_addtail()
66 list->prev = item; in list_addtail()
71 to->prev = from->prev; in list_replace()
72 to->next = from->next; in list_replace()
73 from->next->prev = to; in list_replace()
74 from->prev->next = to; in list_replace()
77 static inline void list_del(struct list_head *item) in list_del() argument
79 item->prev->next = item->next; in list_del()
80 item->next->prev = item->prev; in list_del()
83 static inline void list_delinit(struct list_head *item) in list_delinit() argument
85 item->prev->next = item->next; in list_delinit()
86 item->next->prev = item->prev; in list_delinit()
87 item->next = item; in list_delinit()
88 item->prev = item; in list_delinit()
99 ((__type *)(((char *)(__item)) - offsetof(__type, __field)))
102 LIST_ENTRY(__type, (__ptr)->next, __field)
105 LIST_ENTRY(__type, (__ptr)->prev, __field)
108 ((__list)->next == (__list))
113 - ((char *)&((typeof(sample))0)->member))
117 for (pos = container_of((head)->next, pos, member); \
118 &pos->member != (head); \
119 pos = container_of(pos->member.next, pos, member))
122 for (pos = container_of((head)->next, pos, member), \
123 storage = container_of(pos->member.next, pos, member); \
124 &pos->member != (head); \
125 pos = storage, storage = container_of(storage->member.next, storage, member))
128 for (pos = container_of((head)->prev, pos, member), \
129 storage = container_of(pos->member.prev, pos, member); \
130 &pos->member != (head); \
131 pos = storage, storage = container_of(storage->member.prev, storage, member))
135 &pos->member != (head); \
136 pos = container_of(pos->member.next, pos, member))
140 &pos->member != (head); \
141 pos = container_of(pos->member.prev, pos, member))