Home | History | Annotate | Download | only in gen

Lines Matching refs:rbto

93 #define	RB_NODETOITEM(rbto, rbn)	\
94 ((void *)((uintptr_t)(rbn) - (rbto)->rbto_node_offset))
95 #define RB_ITEMTONODE(rbto, rbn) \
96 ((rb_node_t *)((uintptr_t)(rbn) + (rbto)->rbto_node_offset))
125 const rb_tree_ops_t *rbto = rbt->rbt_ops;
126 rbto_compare_key_fn compare_key = rbto->rbto_compare_key;
130 void *pobj = RB_NODETOITEM(rbto, parent);
131 const signed int diff = (*compare_key)(rbto->rbto_context,
144 const rb_tree_ops_t *rbto = rbt->rbt_ops;
145 rbto_compare_key_fn compare_key = rbto->rbto_compare_key;
149 void *pobj = RB_NODETOITEM(rbto, parent);
150 const signed int diff = (*compare_key)(rbto->rbto_context,
159 return last == NULL ? NULL : RB_NODETOITEM(rbto, last);
165 const rb_tree_ops_t *rbto = rbt->rbt_ops;
166 rbto_compare_key_fn compare_key = rbto->rbto_compare_key;
170 void *pobj = RB_NODETOITEM(rbto, parent);
171 const signed int diff = (*compare_key)(rbto->rbto_context,
180 return last == NULL ? NULL : RB_NODETOITEM(rbto, last);
186 const rb_tree_ops_t *rbto = rbt->rbt_ops;
187 rbto_compare_nodes_fn compare_nodes = rbto->rbto_compare_nodes;
188 struct rb_node *parent, *tmp, *self = RB_ITEMTONODE(rbto, object);
209 void *tobj = RB_NODETOITEM(rbto, tmp);
210 const signed int diff = (*compare_nodes)(rbto->rbto_context,
243 KASSERT(prev == NULL || (*compare_nodes)(rbto->rbto_context,
244 RB_NODETOITEM(rbto, prev), RB_NODETOITEM(rbto, self)) < 0);
245 KASSERT(next == NULL || (*compare_nodes)(rbto->rbto_context,
246 RB_NODETOITEM(rbto, self), RB_NODETOITEM(rbto, next)) < 0);
294 KASSERT((*compare_nodes)(rbto->rbto_context,
295 RB_NODETOITEM(rbto, self),
296 RB_NODETOITEM(rbto, RB_FATHER(self))) < 0);
299 KASSERT((*compare_nodes)(rbto->rbto_context,
300 RB_NODETOITEM(rbto, RB_FATHER(self)),
301 RB_NODETOITEM(rbto, self)) < 0);
750 const rb_tree_ops_t *rbto = rbt->rbt_ops;
751 struct rb_node *standin, *self = RB_ITEMTONODE(rbto, object);
808 standin = RB_ITEMTONODE(rbto, rb_tree_iterate(rbt, object, which));
966 const rb_tree_ops_t *rbto = rbt->rbt_ops;
976 return RB_NODETOITEM(rbto, rbt->rbt_minmax[direction]);
983 return RB_NODETOITEM(rbto, self);
986 self = RB_ITEMTONODE(rbto, object);
995 return RB_NODETOITEM(rbto, RB_FATHER(self));
1009 return RB_NODETOITEM(rbto, self);
1079 const rb_tree_ops_t *rbto = rbt->rbt_ops;
1080 rbto_compare_nodes_fn compare_nodes = rbto->rbto_compare_nodes;
1083 KASSERT(prev == NULL || (*compare_nodes)(rbto->rbto_context,
1084 RB_NODETOITEM(rbto, prev), RB_NODETOITEM(rbto, self)) < 0);
1095 int diff = (*compare_nodes)(rbto->rbto_context,
1096 RB_NODETOITEM(rbto, self),
1097 RB_NODETOITEM(rbto, RB_FATHER(self)));