Open Search
    hashmap.h File Reference

    Classes

    struct  DefaultHashMapEntryHandlerBase< HASHVALUE, L >
     
    struct  DefaultHashMapEntryHandlerBase< HASHVALUE, L >::KeyConstructor< ENTRY, KEY, COPY_KEY >
     
    struct  DefaultHashMapEntryHandlerBase< HASHVALUE, L >::KeyConstructor< ENTRY, KEY &, true >
     
    struct  DefaultHashMapEntryHandlerBase< HASHVALUE, L >::KeyValueConstructor< ENTRY, KEY, VALUE, COPY_KEY, COPY_VALUE >
     
    struct  DefaultHashMapEntryHandlerBase< HASHVALUE, L >::KeyValueConstructor< ENTRY, KEY &, VALUE, true, false >
     
    struct  DefaultHashMapEntryHandlerBase< HASHVALUE, L >::KeyValueConstructor< ENTRY, KEY, VALUE &, false, true >
     
    struct  DefaultHashMapEntryHandlerBase< HASHVALUE, L >::KeyValueConstructor< ENTRY, KEY &, VALUE &, true, true >
     
    struct  HashMapKeyValuePair
     
    struct  HashMapValueKeyPair
     
    struct  HashMapKeyHashValuePair
     
    class  HashMapEntryBase< K, V, ENTRY_HANDLER, LAYOUT >
     
    class  HashMapEntryBase< K, V, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::HASH_KEY_VALUE >
     
    class  HashMapEntryBase< K, V, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::KEY_VALUE >
     
    class  HashMapEntryBase< K, V, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::VALUE >
     
    class  HashMapEntryBase< K, V, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::KEY_HASH_VALUE >
     
    class  HashMapEntryBase< K, V, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::HASH_VALUE_KEY >
     
    class  HashMapEntryBase< K, UnitType, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::HASH_KEY_VALUE >
     
    class  HashMapEntryBase< K, UnitType, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::KEY_HASH_VALUE >
     
    class  HashMapEntryBase< K, UnitType, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::HASH_VALUE_KEY >
     
    class  HashMapEntryBase< K, UnitType, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::KEY_VALUE >
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >
     
    struct  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::LambdaEntryConstructor< KEY, LAMBDA, COPY_KEY >
     
    struct  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::LambdaEntryConstructor< KEY &, LAMBDA, true >
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::Entry
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::MultiEntryIterator< CONSTITERATOR >
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::EntryIteratorBase< CONSTITERATOR >
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::KeyIteratorBase< CONSTITERATOR >
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::ValueIteratorBase< CONSTITERATOR >
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::IteratorTemplateBase< ITERATOR, CONSTITERATOR, SUPER >
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::ConstIteratorTemplate< SUPER >
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::IteratorTemplate< SUPER >
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::Hash< VALUEHASH >
     
    union  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::SimpleBucket
     
    struct  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::DefaultBucket
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::HashMapAllocator< GENERAL_ALLOCATOR, BLOCK_ALLOCATOR >
     
    class  HashMap< K, V, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::HashMapAllocator< ONE_ALLOCATOR, ONE_ALLOCATOR >
     
    class  HashMapSelector< HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >
     
    struct  GenericCastMemberTrait< HashMap< K_TO, V_TO >, HashMap< K_FROM, V_FROM >, SAFE >
     
    class  HashSet< T, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >
     
    struct  HashSet< T, HASH, ENTRY_HANDLER, ALLOCATOR, MODE, INITIAL_CAPACITY, LOAD_FACTOR, ENTRY_ALLOCATOR >::LambdaEntryConstructor< KEY, LAMBDA >
     
    struct  GenericCastMemberTrait< HashSet< TO >, HashSet< FROM >, SAFE >
     

    Namespaces

     maxon
     

    Enumerations

    enum class  HASHMAP_ENTRY_LAYOUT {
      HASH_KEY_VALUE ,
      KEY_HASH_VALUE ,
      HASH_VALUE_KEY ,
      HASH_VALUE ,
      KEY_VALUE ,
      VALUE
    }
     
    enum class  HASHMAP_MODE {
      DEFAULT ,
      SYNCHRONIZED ,
      NO_NONEMPTY_BUCKET_TABLE
    }
     

    Functions

    enum maxon::HASHMAP_ENTRY_LAYOUT MAXON_ENUM_LIST (HASHMAP_ENTRY_LAYOUT)
     
    enum maxon::HASHMAP_MODE MAXON_ENUM_LIST (HASHMAP_MODE)
     

    Variables

     HASH_KEY_VALUE
     
     KEY_HASH_VALUE
     
     HASH_VALUE_KEY
     
     HASH_VALUE
     
     KEY_VALUE
     
     VALUE
     
     DEFAULT
     
     SYNCHRONIZED
     
     NO_NONEMPTY_BUCKET_TABLE
     

    Variable Documentation

    ◆ HASH_KEY_VALUE

    HASH_KEY_VALUE

    ◆ KEY_HASH_VALUE

    KEY_HASH_VALUE

    ◆ HASH_VALUE_KEY

    HASH_VALUE_KEY

    ◆ HASH_VALUE

    HASH_VALUE

    ◆ KEY_VALUE

    KEY_VALUE

    ◆ VALUE

    VALUE

    ◆ DEFAULT

    DEFAULT

    The default mode.

    ◆ SYNCHRONIZED

    SYNCHRONIZED

    Use atomic access to implement a lock-free hash map.

    ◆ NO_NONEMPTY_BUCKET_TABLE

    NO_NONEMPTY_BUCKET_TABLE

    < Don't maintain a table of non-empty buckets. This reduces memory consumption, but makes iterations slower.