Sierra Toolkit Version of the Day
eastl::hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode > Class Template Reference

#include <hash_map_eastl.h>

Inheritance diagram for eastl::hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode >:
Collaboration diagram for eastl::hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode >:

List of all members.

Public Types

typedef hashtable< Key,
eastl::pair< const Key, T >
, Allocator, eastl::use_first
< eastl::pair< const Key, T >
>, Predicate, Hash,
mod_range_hashing,
default_ranged_hash,
prime_rehash_policy,
bCacheHashCode, true, false > 
base_type
typedef hash_multimap< Key, T,
Hash, Predicate, Allocator,
bCacheHashCode > 
this_type
typedef base_type::size_type size_type
typedef base_type::key_type key_type
typedef T mapped_type
typedef base_type::value_type value_type
typedef base_type::allocator_type allocator_type
typedef base_type::node_type node_type
typedef
base_type::insert_return_type 
insert_return_type
typedef base_type::iterator iterator

Public Member Functions

 hash_multimap (const allocator_type &allocator=allocator_type(EASTL_DEFAULT_NAME_PREFIX" hash_multimap"))
 hash_multimap (size_type nBucketCount, const Hash &hashFunction=Hash(), const Predicate &predicate=Predicate(), const allocator_type &allocator=allocator_type(EASTL_DEFAULT_NAME_PREFIX" hash_multimap"))
template<typename ForwardIterator >
 hash_multimap (ForwardIterator first, ForwardIterator last, size_type nBucketCount=0, const Hash &hashFunction=Hash(), const Predicate &predicate=Predicate(), const allocator_type &allocator=allocator_type(EASTL_DEFAULT_NAME_PREFIX" hash_multimap"))
insert_return_type insert (const key_type &key)

Detailed Description

template<typename Key, typename T, typename Hash = eastl::hash<Key>, typename Predicate = eastl::equal_to<Key>, typename Allocator = EASTLAllocatorType, bool bCacheHashCode = false>
class eastl::hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode >

hash_multimap

Implements a hash_multimap, which is the same thing as a hash_map except that contained elements need not be unique. See the documentation for hash_set for details.

Definition at line 235 of file hash_map_eastl.h.


Constructor & Destructor Documentation

template<typename Key , typename T , typename Hash = eastl::hash<Key>, typename Predicate = eastl::equal_to<Key>, typename Allocator = EASTLAllocatorType, bool bCacheHashCode = false>
eastl::hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode >::hash_multimap ( const allocator_type &  allocator = allocator_type( EASTL_DEFAULT_NAME_PREFIX " hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode >" )) [inline, explicit]

hash_multimap

Default constructor.

Definition at line 263 of file hash_map_eastl.h.

template<typename Key , typename T , typename Hash = eastl::hash<Key>, typename Predicate = eastl::equal_to<Key>, typename Allocator = EASTLAllocatorType, bool bCacheHashCode = false>
eastl::hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode >::hash_multimap ( size_type  nBucketCount,
const Hash &  hashFunction = Hash(),
const Predicate &  predicate = Predicate(),
const allocator_type &  allocator = allocator_type( EASTL_DEFAULT_NAME_PREFIX " hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode >" ) 
) [inline, explicit]

hash_multimap

Constructor which creates an empty container, but start with nBucketCount buckets. We default to a small nBucketCount value, though the user really should manually specify an appropriate value in order to prevent memory from being reallocated.

Definition at line 277 of file hash_map_eastl.h.

template<typename Key , typename T , typename Hash = eastl::hash<Key>, typename Predicate = eastl::equal_to<Key>, typename Allocator = EASTLAllocatorType, bool bCacheHashCode = false>
template<typename ForwardIterator >
eastl::hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode >::hash_multimap ( ForwardIterator  first,
ForwardIterator  last,
size_type  nBucketCount = 0,
const Hash &  hashFunction = Hash(),
const Predicate &  predicate = Predicate(),
const allocator_type &  allocator = allocator_type( EASTL_DEFAULT_NAME_PREFIX " hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode >" ) 
) [inline]

hash_multimap

An input bucket count of <= 1 causes the bucket count to be equal to the number of elements in the input range.

Definition at line 292 of file hash_map_eastl.h.


Member Function Documentation

template<typename Key , typename T , typename Hash = eastl::hash<Key>, typename Predicate = eastl::equal_to<Key>, typename Allocator = EASTLAllocatorType, bool bCacheHashCode = false>
insert_return_type eastl::hash_multimap< Key, T, Hash, Predicate, Allocator, bCacheHashCode >::insert ( const key_type &  key) [inline]

insert

This is an extension to the C++ standard. We insert a default-constructed element with the given key. The reason for this is that we can avoid the potentially expensive operation of creating and/or copying a mapped_type object on the stack.

Definition at line 307 of file hash_map_eastl.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines