ScummVM API documentation
list.h
1 
5 #ifndef __ENET_LIST_H__
6 #define __ENET_LIST_H__
7 
8 #include <stdlib.h>
9 
10 typedef struct _ENetListNode
11 {
12  struct _ENetListNode * next;
13  struct _ENetListNode * previous;
14 } ENetListNode;
15 
17 
18 typedef struct _ENetList
19 {
20  ENetListNode sentinel;
21 } ENetList;
22 
23 extern void enet_list_clear (ENetList *);
24 
25 extern ENetListIterator enet_list_insert (ENetListIterator, void *);
26 extern void * enet_list_remove (ENetListIterator);
27 extern ENetListIterator enet_list_move (ENetListIterator, void *, void *);
28 
29 extern size_t enet_list_size (ENetList *);
30 
31 #define enet_list_begin(list) ((list) -> sentinel.next)
32 #define enet_list_end(list) (& (list) -> sentinel)
33 
34 #define enet_list_empty(list) (enet_list_begin (list) == enet_list_end (list))
35 
36 #define enet_list_next(iterator) ((iterator) -> next)
37 #define enet_list_previous(iterator) ((iterator) -> previous)
38 
39 #define enet_list_front(list) ((void *) (list) -> sentinel.next)
40 #define enet_list_back(list) ((void *) (list) -> sentinel.previous)
41 
42 #endif /* __ENET_LIST_H__ */
43 
Definition: list.h:10
Definition: list.h:18