]> pd.if.org Git - zos/blob - klib/objlist.c
klib and makefile
[zos] / klib / objlist.c
1 #include "objlist.h"
2
3 #include "mem.h"
4
5 /*
6  * how to have an empty list
7  */
8 struct kobj_list *list_init() {
9         struct kobj_list *list;
10         list = koalloc(sizeof *list);
11         list->next = 0;
12         list->prev = 0;
13         list->flags = 0;
14         return list;
15 }
16
17 /* add an object pointer to the end of the list */
18 void list_push(struct kobj_list *list, void *obj) {
19         
20 }
21
22 void *list_pop(struct kobj_list *list, void *obj) {
23         return 0;
24 }
25
26 void *list_shift(struct kobj_list *list, void *obj) {
27         return 0;
28 }
29
30 void list_unshift(struct kobj_list *list, void *obj) {
31 }
32
33 void list_free(struct kobj_list *list, void *obj) {
34 }
35
36 #if 0
37 for (cur = list; cur != list; cur = cur->next) {
38         
39 }
40 #endif
41 void *list_elem(struct kobj_list *list, uint64_t elem) {
42         return 0;
43 #if 0
44         if (elem > list->elements) return 0;
45
46         while (elem > KOLIST_MAX_INDEX) {
47                 list = list->next;
48                 elem -= KOLIST_MAX_INDEX+1;
49         }
50         return list->obj[elem];
51 #endif
52 }