.TH ght_first 3 "2005-07-21" "libghthash" "libghthash User Manual" .SH NAME ght_first \- return the first element in the table for iteration .SH SYNOPSIS .B #include .BI "void *ght_first(ght_hash_table_t *" p_ht ", ght_iterator_t *" p_it ", void **" pp_key ");" .SH DESCRIPTION 'Return the first element in an iteration. .I p_ht is the hash table to iterate in, .I p_it is a pointer to the iterator to initialize, and .I pp_key is filled in with a pointer to the key for the current item. This function should be used for iteration and is used together with .I ght_next() Note that you cannot assume anything about the order in which the entries are accessed. If an entry is inserted during an iteration, the entry might or might not occur in the iteration. Note that removal during an iteration is only safe for the current entry or an entry which has already been iterated over. The use of the .I ght_iterator_t allows for several concurrent iterations, where you would use one .I ght_iterator_t for each iteration. In threaded environments, you should still lock access to the hash table for insertion and removal. .SH SEE ALSO .BR ght_next (3), libghthash is fully documented with Doxygen (in {prefix}/doc/libghthash/html/). .SH AUTHOR This manual page was created by Simon Kagstrom .