Sierra Toolkit  Version of the Day
eastl::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, H, bCacheHashCode > Struct Template Reference

#include <hashtable_eastl.h>

Inheritance diagram for eastl::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, H, bCacheHashCode >:

Detailed Description

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2, typename H, bool bCacheHashCode>
struct eastl::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, H, bCacheHashCode >

hash_code_base

Encapsulates two policy issues that aren't quite orthogonal. (1) The difference between using a ranged hash function and using the combination of a hash function and a range-hashing function. In the former case we don't have such things as hash codes, so we have a dummy type as placeholder. (2) Whether or not we cache hash codes. Caching hash codes is meaningless if we have a ranged hash function. This is because a ranged hash function converts an object directly to its bucket index without ostensibly using a hash code. We also put the key extraction and equality comparison function objects here, for convenience.

Definition at line 482 of file hashtable_eastl.h.


The documentation for this struct was generated from the following file: