Lines Matching refs:tab
37 * pos = hashscan(tab, flags);
47 hashscan(register Hash_table_t* tab, register int flags)
54 pos->tab = tab->root->last.table = tab;
56 pos->slot = tab->table - 1;
57 pos->limit = tab->table + tab->size;
58 if (tab->scope && !(flags & HASH_NOSCOPE))
65 if (tab->frozen)
67 register Hash_bucket_t** sp = tab->table;
68 register Hash_bucket_t** sx = tab->table + tab->size;
74 } while (tab = tab->scope);
75 tab = pos->tab;
78 tab->frozen++;
101 pos->tab->frozen--;
102 if (!pos->flags || !pos->tab->scope) return(0);
103 pos->tab = pos->tab->scope;
104 pos->tab->root->last.table = pos->tab;
105 pos->limit = (pos->slot = pos->tab->table) + pos->tab->size;
106 pos->tab->frozen++;
110 if (!(b->hash & HASH_DELETED) && (!(pos->tab->flags & HASH_VALUE) || b->value) && (!pos->flags || !(b->hash & (HASH_HIDDEN|HASH_HIDES)))) break;
123 return(pos->tab->root->last.bucket = pos->bucket = b);
135 if (pos->tab->frozen)
136 pos->tab->frozen--;