Octopus
sphash.F90 File Reference

Go to the source code of this file.

Modules

module  sphash_oct_m
 This module implements a simple hash table for string valued keys and integer values using the C++ STL unordered_map container.
 

Data Types

interface  sphash_oct_m::sphash_value_t
 
type  sphash_oct_m::sphash_t
 
type  sphash_oct_m::sphash_iterator_t
 

Functions/Subroutines

type(sphash_value_t) function, pointer sphash_oct_m::sphash_value_constructor (value, clone)
 
subroutine sphash_oct_m::sphash_value_finalize (this)
 
class(*) function, pointer sphash_oct_m::sphash_value_get (this)
 
subroutine, public sphash_oct_m::sphash_init (h)
 Initialize a hash table h with size entries. Since we use separate chaining, the number of entries in the hash table is in principle, unlimited. We take the smallest prime number as table size that is greater or equal than the requested size, to reduce collisions. More...
 
logical function sphash_oct_m::sphash_is_associated (this)
 Check if the sphash attribute, map, is associated. More...
 
subroutine, public sphash_oct_m::sphash_end (h)
 Free a hash table. More...
 
subroutine, public sphash_oct_m::sphash_insert (h, key, val, clone)
 Insert a (key, val) pair into the hash table h. If clone=.true., the object will be copied. More...
 
class(*) function, pointer, public sphash_oct_m::sphash_lookup (h, key, found)
 Look up a value in the hash table h. If found is present, it indicates if key could be found in the table. If found = .false., the return value of iihash_lookup is meaningless (and essentially undefined). More...
 
subroutine sphash_oct_m::sphash_iterator_start (this, h)
 
logical function sphash_oct_m::sphash_iterator_has_next (this)
 
class(*) function, pointer sphash_oct_m::sphash_iterator_get_next (this)