3
@brief ENet linked list functions
5
#define ENET_BUILDING_LIB 1
9
@defgroup list ENet linked list utility functions
14
enet_list_clear (ENetList * list)
16
list -> sentinel.next = & list -> sentinel;
17
list -> sentinel.previous = & list -> sentinel;
21
enet_list_insert (ENetListIterator position, void * data)
23
ENetListIterator result = (ENetListIterator) data;
25
result -> previous = position -> previous;
26
result -> next = position;
28
result -> previous -> next = result;
29
position -> previous = result;
35
enet_list_remove (ENetListIterator position)
37
position -> previous -> next = position -> next;
38
position -> next -> previous = position -> previous;
44
enet_list_move (ENetListIterator position, void * dataFirst, void * dataLast)
46
ENetListIterator first = (ENetListIterator) dataFirst,
47
last = (ENetListIterator) dataLast;
49
first -> previous -> next = last -> next;
50
last -> next -> previous = first -> previous;
52
first -> previous = position -> previous;
53
last -> next = position;
55
first -> previous -> next = first;
56
position -> previous = last;
62
enet_list_size (ENetList * list)
65
ENetListIterator position;
67
for (position = enet_list_begin (list);
68
position != enet_list_end (list);
69
position = enet_list_next (position))