HASH is the hash value for the element to be inserted. */
template<typename Descriptor, template<typename Type> class Allocator>
-typename Descriptor::value_type **
+typename hash_table<Descriptor, Allocator, false>::value_type **
hash_table<Descriptor, Allocator, false>
::find_empty_slot_for_expand (hashval_t hash)
{
be used to insert or delete an element. */
template<typename Descriptor, template<typename Type> class Allocator>
-typename Descriptor::value_type *
+typename hash_table<Descriptor, Allocator, false>::value_type *
hash_table<Descriptor, Allocator, false>
::find_with_hash (const compare_type *comparable, hashval_t hash)
{
entry, NULL may be returned if memory allocation fails. */
template<typename Descriptor, template<typename Type> class Allocator>
-typename Descriptor::value_type **
+typename hash_table<Descriptor, Allocator, false>::value_type **
hash_table<Descriptor, Allocator, false>
::find_slot_with_hash (const compare_type *comparable, hashval_t hash,
enum insert_option insert)
template<typename Descriptor, template<typename Type> class Allocator>
template<typename Argument,
- int (*Callback) (typename Descriptor::value_type **slot, Argument argument)>
+ int (*Callback) (typename hash_table<Descriptor, Allocator,
+ false>::value_type **slot,
+ Argument argument)>
void
hash_table<Descriptor, Allocator, false>::traverse_noresize (Argument argument)
{
template <typename Descriptor,
template <typename Type> class Allocator>
template <typename Argument,
- int (*Callback) (typename Descriptor::value_type **slot,
+ int (*Callback) (typename hash_table<Descriptor, Allocator,
+ false>::value_type **slot,
Argument argument)>
void
hash_table<Descriptor, Allocator, false>::traverse (Argument argument)
HASH is the hash value for the element to be inserted. */
template<typename Descriptor, template<typename Type> class Allocator>
-typename Descriptor::value_type *
+typename hash_table<Descriptor, Allocator, true>::value_type *
hash_table<Descriptor, Allocator, true>
::find_empty_slot_for_expand (hashval_t hash)
{
be used to insert or delete an element. */
template<typename Descriptor, template<typename Type> class Allocator>
-typename Descriptor::value_type &
+typename hash_table<Descriptor, Allocator, true>::value_type &
hash_table<Descriptor, Allocator, true>
::find_with_hash (const compare_type &comparable, hashval_t hash)
{
entry, NULL may be returned if memory allocation fails. */
template<typename Descriptor, template<typename Type> class Allocator>
-typename Descriptor::value_type *
+typename hash_table<Descriptor, Allocator, true>::value_type *
hash_table<Descriptor, Allocator, true>
::find_slot_with_hash (const compare_type &comparable, hashval_t hash,
enum insert_option insert)
template<typename Descriptor,
template<typename Type> class Allocator>
template<typename Argument,
- int (*Callback) (typename Descriptor::value_type *slot,
+ int (*Callback) (typename hash_table<Descriptor, Allocator,
+ true>::value_type *slot,
Argument argument)>
void
hash_table<Descriptor, Allocator, true>::traverse_noresize (Argument argument)
template <typename Descriptor,
template <typename Type> class Allocator>
template <typename Argument,
- int (*Callback) (typename Descriptor::value_type *slot,
+ int (*Callback) (typename hash_table<Descriptor, Allocator,
+ true>::value_type *slot,
Argument argument)>
void
hash_table<Descriptor, Allocator, true>::traverse (Argument argument)