PULSAR  2.0.0
Parallel Ultra-Light Systolic Array Runtime
 All Data Structures Files Functions Typedefs Enumerations Macros Groups
icl_list.h
Go to the documentation of this file.
1 
11 #ifndef ICL_LIST_H
12 #define ICL_LIST_H
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
18 typedef struct icl_list_s {
19  void *data;
20  struct icl_list_s *flink;
21  struct icl_list_s *blink;
22 } icl_list_t;
23 
26 icl_list_t* icl_list_search(icl_list_t *, void *, int (*)(void*, void*));
27 icl_list_t* icl_list_isort(icl_list_t *head, void *data, int (*)(void*, void*));
35 
36 int icl_list_delete(icl_list_t *, icl_list_t *, void (*)(void *));
37 int icl_list_destroy(icl_list_t *, void (*)(void*));
39 
40 #define icl_list_foreach(list, ptr) \
41  for (ptr = icl_list_first(list); ptr != NULL; ptr = icl_list_next(list, ptr))
42 
43 #ifdef __cplusplus
44 }
45 #endif
46 
47 #endif /* ICL_LIST_H */