Lines Matching defs:elem
90 const void *(*convert)(const void *elem),
164 ipmi_hash_compute(ipmi_hash_t *ihp, const void *elem)
166 return (ihp->ih_compute(ihp->ih_convert(elem)) % ihp->ih_nbuckets);
196 void *elem;
204 elem = (void *)((uintptr_t)link - ihp->ih_linkoffs);
205 nidx = ipmi_hash_compute(ihp, elem);
223 void *elem = (void *)((uintptr_t)hl - ihp->ih_linkoffs);
225 if (ihp->ih_compare(ihp->ih_convert(elem), search) == 0)
226 return (elem);
244 ipmi_hash_next(ipmi_hash_t *ihp, void *elem)
246 void *link = ipmi_list_next((uintptr_t)elem + ihp->ih_linkoffs);
255 ipmi_hash_insert(ipmi_hash_t *ihp, void *elem)
257 ipmi_hash_link_t *link = (void *)((uintptr_t)elem + ihp->ih_linkoffs);
258 ulong_t idx = ipmi_hash_compute(ihp, elem);
260 assert(ipmi_hash_lookup(ihp, ihp->ih_convert(elem)) == NULL);
272 ipmi_hash_remove(ipmi_hash_t *ihp, void *elem)
274 ulong_t idx = ipmi_hash_compute(ihp, elem);
275 ipmi_hash_link_t *link = (void *)((uintptr_t)elem + ihp->ih_linkoffs);