Lines Matching refs:hash

18 - dynamic hash table
30 LHASH_OF(TYPE) *lh_TYPE_new(OPENSSL_LH_HASHFUNC hash, OPENSSL_LH_COMPFUNC compare);
86 This library implements type-checked dynamic hash tables. The hash
91 To define a new type-checked dynamic hash table, use B<DEFINE_LHASH_OF_EX>().
98 arbitrary data entries, and specifies the 'hash' and 'compare'
99 callbacks to be used in organising the table's entries. The I<hash>
101 an unsigned long hash value for its key field. The hash value is
102 normally truncated to a power of 2, so make sure that your hash
104 takes two arguments (pointers to two hash table entries), and returns
107 If your hash table
108 will contain items of some particular type and the I<hash> and
109 I<compare> callbacks hash/compare these types, then the
115 * Implement the hash and compare functions; "stuff" can be any word.
138 Then a hash table of B<I<TYPE>> objects can be created using this:
145 I<table>. Allocated hash table entries will not be freed; consider
147 hash table (see below). If the argument is NULL, nothing is done.
150 entries can be added to the flushed table. Allocated hash table entries
152 remaining entries in the hash table (see below).
165 B<lh_I<TYPE>_doall>() will, for every entry in the hash table, call
175 /* Call "TYPE_cleanup" against all items in a hash table. */
178 /* Then the hash table itself can be deallocated */
189 this is demonstrated here (printing all hash table entries to a BIO
204 reason for this is that deleting an item from the hash table may result in the
205 hash table being contracted to a smaller size and rehashed.
207 undefined behaviour under these conditions, as these functions assume the hash
213 disables hash table contraction and guarantees that it will be safe to delete
214 items from a hash table during a call to B<lh_I<TYPE>_doall>() or
223 B<lh_I<TYPE>_num_items>() returns the number of items in the hash table.
226 factor used to determine when the hash table is contracted. The factor is the
227 load factor at or below which hash table contraction will occur, multiplied by
229 number of nodes. Setting this value to 0 disables hash table contraction.
252 When a hash table entry is replaced, B<lh_I<TYPE>_insert>() or
257 NULL is returned if there is no such value in the hash table.
259 B<lh_I<TYPE>_retrieve>() and OPENSSL_LH_retrieve() return the hash table entry
290 As an example, a hash table may be maintained by code that, for
292 indexed in the hash table (i.e. it is returned as "const" from