SILC Hash Table Interface
Header: silchashtable.h
DESCRIPTION

     Implementation of collision resistant hash table. This is a hash table
     that provides a reliable (what you add there stays there, and duplicate
     keys are allowed) with as fast reference to the key as possible. If
     there are a lot of duplicate keys in the hash table the lookup gets
     slower of course. However, this is reliable and no data is lost at any
     point. If you know that you never have duplicate keys then this is as
     fast as any simple hash table.

     The interface provides many ways to search the hash table including
     an extended interface where caller can specify its own hash and comparison
     functions.

     There are two ways to traverse the entire hash table if this feature
     is needed. There exists a foreach function that calls a foreach
     callback for each entry in the hash table. Other way is to use
     SilcHashTableList structure and traverse the hash table inside while()
     using the list structure. Both are equally fast.