Lines Matching refs:ilist
29 static void int_node__delete(struct int_node *ilist) in int_node__delete() argument
31 free(ilist); in int_node__delete()
55 int intlist__add(struct intlist *ilist, unsigned long i) in intlist__add() argument
57 return rblist__add_node(&ilist->rblist, (void *)i); in intlist__add()
60 void intlist__remove(struct intlist *ilist, struct int_node *node) in intlist__remove() argument
62 rblist__remove_node(&ilist->rblist, &node->rb_node); in intlist__remove()
65 static struct int_node *__intlist__findnew(struct intlist *ilist, in __intlist__findnew() argument
71 if (ilist == NULL) in __intlist__findnew()
75 rb_node = rblist__findnew(&ilist->rblist, (void *)i); in __intlist__findnew()
77 rb_node = rblist__find(&ilist->rblist, (void *)i); in __intlist__findnew()
85 struct int_node *intlist__find(struct intlist *ilist, unsigned long i) in intlist__find() argument
87 return __intlist__findnew(ilist, i, false); in intlist__find()
90 struct int_node *intlist__findnew(struct intlist *ilist, unsigned long i) in intlist__findnew() argument
92 return __intlist__findnew(ilist, i, true); in intlist__findnew()
95 static int intlist__parse_list(struct intlist *ilist, const char *s) in intlist__parse_list() argument
105 err = intlist__add(ilist, value); in intlist__parse_list()
116 struct intlist *ilist = malloc(sizeof(*ilist)); in intlist__new() local
118 if (ilist != NULL) { in intlist__new()
119 rblist__init(&ilist->rblist); in intlist__new()
120 ilist->rblist.node_cmp = intlist__node_cmp; in intlist__new()
121 ilist->rblist.node_new = intlist__node_new; in intlist__new()
122 ilist->rblist.node_delete = intlist__node_delete; in intlist__new()
124 if (slist && intlist__parse_list(ilist, slist)) in intlist__new()
128 return ilist; in intlist__new()
130 intlist__delete(ilist); in intlist__new()
134 void intlist__delete(struct intlist *ilist) in intlist__delete() argument
136 if (ilist != NULL) in intlist__delete()
137 rblist__delete(&ilist->rblist); in intlist__delete()
140 struct int_node *intlist__entry(const struct intlist *ilist, unsigned int idx) in intlist__entry() argument
145 rb_node = rblist__entry(&ilist->rblist, idx); in intlist__entry()