Lines Matching refs:itr

15     struct hashtable_itr *itr = (struct hashtable_itr *)  in hashtable_iterator()  local
17 if (NULL == itr) return NULL; in hashtable_iterator()
18 itr->h = h; in hashtable_iterator()
19 itr->e = NULL; in hashtable_iterator()
20 itr->parent = NULL; in hashtable_iterator()
22 itr->index = tablelength; in hashtable_iterator()
23 if (0 == h->entrycount) return itr; in hashtable_iterator()
29 itr->e = h->table[i]; in hashtable_iterator()
30 itr->index = i; in hashtable_iterator()
34 return itr; in hashtable_iterator()
54 hashtable_iterator_advance(struct hashtable_itr *itr) in hashtable_iterator_advance() argument
59 if (NULL == itr->e) return 0; /* stupidity check */ in hashtable_iterator_advance()
61 next = itr->e->next; in hashtable_iterator_advance()
64 itr->parent = itr->e; in hashtable_iterator_advance()
65 itr->e = next; in hashtable_iterator_advance()
68 tablelength = itr->h->tablelength; in hashtable_iterator_advance()
69 itr->parent = NULL; in hashtable_iterator_advance()
70 if (tablelength <= (j = ++(itr->index))) in hashtable_iterator_advance()
72 itr->e = NULL; in hashtable_iterator_advance()
75 table = itr->h->table; in hashtable_iterator_advance()
80 itr->index = tablelength; in hashtable_iterator_advance()
81 itr->e = NULL; in hashtable_iterator_advance()
85 itr->index = j; in hashtable_iterator_advance()
86 itr->e = next; in hashtable_iterator_advance()
99 hashtable_iterator_remove(struct hashtable_itr *itr) in hashtable_iterator_remove() argument
105 if (NULL == (itr->parent)) in hashtable_iterator_remove()
108 itr->h->table[itr->index] = itr->e->next; in hashtable_iterator_remove()
111 itr->parent->next = itr->e->next; in hashtable_iterator_remove()
114 remember_e = itr->e; in hashtable_iterator_remove()
115 itr->h->entrycount--; in hashtable_iterator_remove()
119 remember_parent = itr->parent; in hashtable_iterator_remove()
120 ret = hashtable_iterator_advance(itr); in hashtable_iterator_remove()
121 if (itr->parent == remember_e) { itr->parent = remember_parent; } in hashtable_iterator_remove()
128 hashtable_iterator_search(struct hashtable_itr *itr, in hashtable_iterator_search() argument
144 itr->index = index; in hashtable_iterator_search()
145 itr->e = e; in hashtable_iterator_search()
146 itr->parent = parent; in hashtable_iterator_search()
147 itr->h = h; in hashtable_iterator_search()