stdlib_hashmap_wrappers Module

Public procedures Public types Public integers


Uses

  • module~~stdlib_hashmap_wrappers~~UsesGraph module~stdlib_hashmap_wrappers stdlib_hashmap_wrappers iso_fortran_env iso_fortran_env module~stdlib_hashmap_wrappers->iso_fortran_env module~stdlib_hash_32bit stdlib_hash_32bit module~stdlib_hashmap_wrappers->module~stdlib_hash_32bit module~stdlib_kinds stdlib_kinds module~stdlib_hashmap_wrappers->module~stdlib_kinds module~stdlib_hash_32bit->iso_fortran_env module~stdlib_hash_32bit->module~stdlib_kinds module~stdlib_kinds->iso_fortran_env iso_c_binding iso_c_binding module~stdlib_kinds->iso_c_binding

Used by

  • module~~stdlib_hashmap_wrappers~~UsedByGraph module~stdlib_hashmap_wrappers stdlib_hashmap_wrappers module~stdlib_hashmap_open stdlib_hashmap_open module~stdlib_hashmap_open->module~stdlib_hashmap_wrappers module~stdlib_hashmaps stdlib_hashmaps module~stdlib_hashmap_open->module~stdlib_hashmaps module~stdlib_hashmaps->module~stdlib_hashmap_wrappers module~stdlib_hashmap_chaining stdlib_hashmap_chaining module~stdlib_hashmap_chaining->module~stdlib_hashmaps

Contents


Interfaces

public interface get

  • private subroutine get_char_key(key, value)

    Gets the contents of the key as a CHARACTER string Arguments: key - the input key value - the contents of key mapped to a CHARACTER string

    Arguments

    TypeIntentOptionalAttributesName
    type(key_type), intent(in) :: key
    character, intent(out), allocatable:: value
  • private subroutine get_int8_key(key, value)

    Gets the contents of the key as an INTEGER(INT8) vector Arguments: key - the input key value - the contents of key mapped to an INTEGER(INT8) vector

    Arguments

    TypeIntentOptionalAttributesName
    type(key_type), intent(in) :: key
    integer(kind=int8), intent(out), allocatable:: value(:)

public interface operator(==)

  • private function equal_keys(key1, key2) result(test)

    Compares two keys for equality (Specifications)

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    type(key_type), intent(in) :: key1
    type(key_type), intent(in) :: key2

    Return Value logical

public interface set

  • private subroutine set_char_key(key, value)

    Sets the contents of the key from a CHARACTER string Arguments: key - the output key value - the input CHARACTER string

    Arguments

    TypeIntentOptionalAttributesName
    type(key_type), intent(out) :: key
    character, intent(in) :: value
  • private subroutine set_int8_key(key, value)

    Sets the contents of the key from an INTEGER(INT8) vector Arguments: key - the output key value - the input INTEGER(INT8) vector

    Arguments

    TypeIntentOptionalAttributesName
    type(key_type), intent(out) :: key
    integer(kind=int8), intent(in) :: value(:)
  • private subroutine set_other(other, value)

    Sets the contents of the other data from a CLASS() variable Arguments: other - the output other data value - the input CLASS() variable

    Arguments

    TypeIntentOptionalAttributesName
    type(other_type), intent(out) :: other
    class(*), intent(in) :: value

Abstract Interfaces

abstract interface

License
Creative Commons License
Version
Experimental

Abstract interface to a 64 bit hash function operating on a KEY_TYPE

  • public pure function hasher_fun(key) result(hash_value)

    Arguments

    TypeIntentOptionalAttributesName
    type(key_type), intent(in) :: key

    Return Value integer(kind=int_hash)


Derived Types

type, public :: key_type

A wrapper type for the key's true type

type, public :: other_type

A wrapper type for the other data's true type


Functions

public pure function fnv_1_hasher(key)

License
Creative Commons License
Version
Experimental

Hashes a key with the FNV_1 algorithm Arguments: key - the key to be hashed

Arguments

TypeIntentOptionalAttributesName
type(key_type), intent(in) :: key

Return Value integer(kind=int_hash)

public pure function fnv_1a_hasher(key)

License
Creative Commons License
Version
Experimental

Hashes a key with the FNV_1a algorithm (Specifications)

Read more…

Arguments

TypeIntentOptionalAttributesName
type(key_type), intent(in) :: key

Return Value integer(kind=int_hash)

public pure function seeded_nmhash32_hasher(key)

License
Creative Commons License
Version
Experimental

Hashes a key with the NMHASH32 hash algorithm (Specifications)

Read more…

Arguments

TypeIntentOptionalAttributesName
type(key_type), intent(in) :: key

Return Value integer(kind=int_hash)

public pure function seeded_nmhash32x_hasher(key)

License
Creative Commons License
Version
Experimental

Hashes a key with the NMHASH32X hash algorithm (Specifications) Arguments: key - the key to be hashed seed - the seed (unused) for the hashing algorithm

Arguments

TypeIntentOptionalAttributesName
type(key_type), intent(in) :: key

Return Value integer(kind=int_hash)

public pure function seeded_water_hasher(key)

License
Creative Commons License
Version
Experimental

Hashes a key with the waterhash algorithm (Specifications)

Read more…

Arguments

TypeIntentOptionalAttributesName
type(key_type), intent(in) :: key

Return Value integer(kind=int_hash)


Subroutines

public pure subroutine copy_key(old_key, new_key)

License
Creative Commons License
Version
Experimental

Copies the contents of the key, old_key, to the key, new_key (Specifications)

Read more…

Arguments

TypeIntentOptionalAttributesName
type(key_type), intent(in) :: old_key
type(key_type), intent(out) :: new_key

public subroutine copy_other(other_in, other_out)

License
Creative Commons License
Version
Experimental

Copies the other data, other_in, to the variable, other_out (Specifications)

Read more…

Arguments

TypeIntentOptionalAttributesName
type(other_type), intent(in) :: other_in
type(other_type), intent(out) :: other_out

public subroutine free_key(key)

License
Creative Commons License
Version
Experimental

Frees the memory in a key (Specifications)

Read more…

Arguments

TypeIntentOptionalAttributesName
type(key_type), intent(inout) :: key

public subroutine free_other(other)

License
Creative Commons License
Version
Experimental

Frees the memory in the other data (Specifications)

Read more…

Arguments

TypeIntentOptionalAttributesName
type(other_type), intent(inout) :: other