Neko  0.9.0
A portable framework for high-order spectral element flow simulations
htable.f90 File Reference

Go to the source code of this file.

Data Types

type  htable::h_tuple_t
 Hash table entry, tuple (key, data) More...
 
type  htable::htable_t
 Base type for a hash table. More...
 
interface  htable::htable_hash
 
type  htable::htable_i4_t
 Integer based hash table. More...
 
type  htable::htable_i8_t
 Integer*8 based hash table. More...
 
type  htable::htable_r8_t
 Double precision based hash table. More...
 
type  htable::htable_pt_t
 Point based hash table. More...
 
type  htable::htable_i4t2_t
 Integer 2-tuple based hash table. More...
 
type  htable::htable_i4t4_t
 Integer 4-tuple based hash table. More...
 
type  htable::htable_cptr_t
 C pointer based hash table. More...
 
type  htable::htable_iter_t
 Base type for a hash table iterator. More...
 
type  htable::htable_iter_i4_t
 Iterator for an integer based hash table. More...
 
type  htable::htable_iter_i8_t
 Iterator for an integer*8 based hash table. More...
 
type  htable::htable_iter_r8_t
 Iterator for a double precision based hash table. More...
 
type  htable::htable_iter_pt_t
 Iterator for a point based hash table. More...
 
type  htable::htable_iter_i4t2_t
 Iterator for an integer based 2-tuple hash table. More...
 
type  htable::htable_iter_i4t4_t
 Iterator for an integer based 4-tuple hash table. More...
 
type  htable::htable_iter_cptr_t
 Iterator for a C pointer based hash table. More...
 
type  htable::h_cptr_t
 

Modules

module  htable
 Implements a hash table ADT.
 

Functions/Subroutines

subroutine htable::htable_init (this, size, key, data)
 Initialize a hash table of type data. More...
 
subroutine htable::htable_free (this)
 Destroy a hash table. More...
 
subroutine htable::htable_clear (this)
 Clear all entries in a hash table. More...
 
pure integer function htable::htable_num_entries (this)
 Return number of entries in the table. More...
 
pure integer function htable::htable_size (this)
 Return total size of htable. More...
 
recursive subroutine htable::htable_set (this, key, data)
 Insert tuple (key, value) into the hash table. More...
 
integer function htable::htable_get (this, key, data)
 Retrieve data associated with key into the hash table. More...
 
subroutine htable::htable_remove (this, key)
 Remove a key from the hash table. More...
 
subroutine htable::htable_set_data (this, idx, data)
 Set data at idx to value. More...
 
subroutine htable::htable_get_data (this, idx, data)
 Return data at idx in value. More...
 
pure logical function htable::htable_eq_key (this, idx, key)
 Compare key at idx to key. More...
 
subroutine htable::htable_set_key (this, idx, key)
 Set key at idx to key. More...
 
logical function htable::htable_iter_next (this)
 Advance the iterator to the next valid table entry. More...
 
subroutine htable::htable_iter_reset (this)
 Reset an iterator. More...
 
subroutine htable::htable_iter_data (this, data)
 Return the data at the current iterator position. More...
 
subroutine htable::htable_i4_init (this, size, data)
 Initialize an integer based hash table. More...
 
subroutine htable::htable_i4_set (this, key, data)
 Insert an integer into the hash table. More...
 
integer function htable::htable_i4_get (this, key, data)
 Retrive an integer with key key from the hash table. More...
 
pure integer function htable::htable_i4_hash (this, k, c)
 Hash function for an integer based hash table. More...
 
subroutine htable::htable_i4_remove (this, key)
 Remove an integer with key key from the hash table. More...
 
subroutine htable::htable_iter_i4_init (this, t)
 Initialize an integer based hash table iterator. More...
 
subroutine htable::htable_iter_i4_free (this)
 Destroy an integer based hash table iterator. More...
 
integer function, pointer htable::htable_iter_i4_value (this)
 Return the current value of the integer based hash table iterator. More...
 
integer function, pointer htable::htable_iter_i4_key (this)
 Return the current key of the integer based hash table iterator. More...
 
subroutine htable::htable_i8_init (this, size, data)
 Initialize an integer*8 based hash table. More...
 
subroutine htable::htable_i8_set (this, key, data)
 Insert an integer*8 into the hash table. More...
 
integer function htable::htable_i8_get (this, key, data)
 Retrive an integer*8 with key key from the hash table. More...
 
pure integer function htable::htable_i8_hash (this, k, c)
 Hash function for an integer*8 based hash table. More...
 
subroutine htable::htable_i8_remove (this, key)
 Remove an integer*8 with key key from the hash table. More...
 
subroutine htable::htable_iter_i8_init (this, t)
 Initialize an integer*8 based hash table iterator. More...
 
subroutine htable::htable_iter_i8_free (this)
 Destroy an integer*8 based hash table iterator. More...
 
integer(kind=i8) function, pointer htable::htable_iter_i8_value (this)
 Return the current value of the integer*8 based hash table iterator. More...
 
integer(kind=i8) function, pointer htable::htable_iter_i8_key (this)
 Return the current key of the integer*8 based hash table iterator. More...
 
subroutine htable::htable_r8_init (this, size, data)
 Initialize a double precision based hash table. More...
 
subroutine htable::htable_r8_set (this, key, data)
 Insert a double precision key (with data) into the hash table. More...
 
integer function htable::htable_r8_get (this, key, data)
 Retrive a double precision float with key key from the hash table. More...
 
pure integer function htable::htable_r8_hash (this, k, c)
 Hash function for a double precision based hash table. More...
 
subroutine htable::htable_r8_remove (this, key)
 Remove a double precision key key from the hash table. More...
 
subroutine htable::htable_iter_r8_init (this, t)
 Initialize a double precision based hash table iterator. More...
 
subroutine htable::htable_iter_r8_free (this)
 Destroy a double precision based hash table iterator. More...
 
real(kind=dp) function, pointer htable::htable_iter_r8_value (this)
 Return the current value of the double precision based hash table iterator. More...
 
real(kind=dp) function, pointer htable::htable_iter_r8_key (this)
 Return the current key of the double precision based hash table iterator. More...
 
subroutine htable::htable_pt_init (this, size, data)
 Initialize a point based hash table. More...
 
subroutine htable::htable_pt_set (this, key, data)
 Insert a point key (with data) into the hash table. More...
 
integer function htable::htable_pt_get (this, key, data)
 Retrive a point with key key from the hash table. More...
 
pure integer function htable::htable_pt_hash (this, k, c)
 Hash function for a point based hash table. More...
 
subroutine htable::htable_pt_remove (this, key)
 Remove a point with key key from the hash table. More...
 
subroutine htable::htable_iter_pt_init (this, t)
 Initialize a point based hash table iterator. More...
 
subroutine htable::htable_iter_pt_free (this)
 Destroy a point based hash table iterator. More...
 
type(point_t) function, pointer htable::htable_iter_pt_value (this)
 Return the current value of the point based hash table iterator. More...
 
type(point_t) function, pointer htable::htable_iter_pt_key (this)
 Return the current key of the point based hash table iterator. More...
 
subroutine htable::htable_i4t2_init (this, size, data)
 Initialize an integer 2-tuple hash table. More...
 
subroutine htable::htable_i4t2_set (this, key, data)
 Insert an integer 2-tuple into the hash table. More...
 
integer function htable::htable_i4t2_get (this, key, data)
 Retrive an integer 2-tuple with key key from the hash table. More...
 
pure integer function htable::htable_i4t2_hash (this, k, c)
 Hash function for an integer 2-tuple hash table. More...
 
subroutine htable::htable_i4t2_remove (this, key)
 Remove an integer 2-tuple with key key from the hash table. More...
 
subroutine htable::htable_iter_i4t2_init (this, t)
 Initialize an integer 2-tuple based hash table iterator. More...
 
subroutine htable::htable_iter_i4t2_free (this)
 Destroy an integer 2-tuple based hash table iterator. More...
 
type(tuple_i4_t) function, pointer htable::htable_iter_i4t2_value (this)
 Return the current value of integer based 2-tuple hash table iterator. More...
 
type(tuple_i4_t) function, pointer htable::htable_iter_i4t2_key (this)
 Return the current key of integer based 2-tuple hash table iterator. More...
 
subroutine htable::htable_i4t4_init (this, size, data)
 Initialize an integer 4-tuple hash table. More...
 
subroutine htable::htable_i4t4_set (this, key, data)
 Insert an integer 4-tuple into the hash table. More...
 
integer function htable::htable_i4t4_get (this, key, data)
 Retrive an integer 4-tuple with key key from the hash table. More...
 
pure integer function htable::htable_i4t4_hash (this, k, c)
 Hash function for an integer 4-tuple hash table. More...
 
subroutine htable::htable_i4t4_remove (this, key)
 Remove an integer 4-tuple with key key from the hash table. More...
 
subroutine htable::htable_iter_i4t4_init (this, t)
 Initialize an integer 4-tuple based hash table iterator. More...
 
subroutine htable::htable_iter_i4t4_free (this)
 Destroy an integer 4-tuple based hash table iterator. More...
 
type(tuple4_i4_t) function, pointer htable::htable_iter_i4t4_value (this)
 Return the current value of integer based 4-tuple hash table iterator. More...
 
type(tuple4_i4_t) function, pointer htable::htable_iter_i4t4_key (this)
 Return the current key of integer based 4-tuple hash table iterator. More...
 
subroutine htable::htable_cptr_init (this, size, data)
 Initialize a C pointer based hash table. More...
 
subroutine htable::htable_cptr_set (this, key, data)
 Insert a C pointer into the hash table. More...
 
integer function htable::htable_cptr_get (this, key, data)
 Retrive a C pointer with key key from the hash table. More...
 
pure integer function htable::htable_cptr_hash (this, k, c)
 Hash function for an integer 4-tuple hash table. More...
 
subroutine htable::htable_cptr_remove (this, key)
 Remove a C pointer with key key from the hash table. More...
 
subroutine htable::htable_iter_cptr_init (this, t)
 Initialize a C pointer based hash table iterator. More...
 
subroutine htable::htable_iter_cptr_free (this)
 Destroy a C pointer based hash table iterator. More...
 
type(h_cptr_t) function, pointer htable::htable_iter_cptr_value (this)
 Return the current value of C pointer based hash table iterator. More...
 
type(h_cptr_t) function, pointer htable::htable_iter_cptr_key (this)
 Return the current key of a C pointer based hash table iterator. More...