Lines Matching refs:root
76 lut_add(struct lut *root, void *lhs, void *rhs, lut_cmp cmp_func) in lut_add() argument
79 struct lut **tmp_hdl = &root, *parent = NULL, *tmp = root; in lut_add()
90 return (root); in lut_add()
103 *tmp_hdl = MALLOC(sizeof (*root)); in lut_add()
110 return (root); in lut_add()
114 lut_lookup(struct lut *root, void *lhs, lut_cmp cmp_func) in lut_lookup() argument
120 while (root) { in lut_lookup()
122 diff = (*cmp_func)(root->lut_lhs, lhs); in lut_lookup()
124 diff = (const char *)lhs - (const char *)root->lut_lhs; in lut_lookup()
127 return (root->lut_rhs); in lut_lookup()
129 root = root->lut_left; in lut_lookup()
131 root = root->lut_right; in lut_lookup()
137 lut_lookup_lhs(struct lut *root, void *lhs, lut_cmp cmp_func) in lut_lookup_lhs() argument
143 while (root) { in lut_lookup_lhs()
145 diff = (*cmp_func)(root->lut_lhs, lhs); in lut_lookup_lhs()
147 diff = (const char *)lhs - (const char *)root->lut_lhs; in lut_lookup_lhs()
150 return (root->lut_lhs); in lut_lookup_lhs()
152 root = root->lut_left; in lut_lookup_lhs()
154 root = root->lut_right; in lut_lookup_lhs()
163 lut_walk(struct lut *root, lut_cb callback, void *arg) in lut_walk() argument
165 struct lut *tmp = root; in lut_walk()
168 if (root == NULL) in lut_walk()
203 lut_free(struct lut *root, lut_cb callback, void *arg) in lut_free() argument
205 struct lut *tmp = root; in lut_free()
208 if (root == NULL) in lut_free()