Neko 1.99.3
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
htable Module Reference

Implements a hash table ADT. More...

Data Types

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

Functions/Subroutines

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

Detailed Description

A hash table storing tuples (key, data), with fixed data-type key but with arbitrary typed data

Function/Subroutine Documentation

◆ htable_clear()

subroutine htable::htable_clear ( class(htable_t), intent(inout this)
private

Definition at line 297 of file htable.f90.

◆ htable_cptr_get()

integer function htable::htable_cptr_get ( class(htable_cptr_t), intent(inout), target  this,
type(h_cptr_t), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyKey to retrieve
[in,out]dataRetrieved data

Definition at line 1549 of file htable.f90.

Here is the call graph for this function:

◆ htable_cptr_hash()

pure integer function htable::htable_cptr_hash ( class(htable_cptr_t), intent(in this,
class(*), intent(in k,
integer, value  c 
)
private

Definition at line 1560 of file htable.f90.

◆ htable_cptr_init()

subroutine htable::htable_cptr_init ( class(htable_cptr_t), intent(inout this,
integer, value  size,
class(*), intent(inout), optional  data 
)
private
Parameters
sizeInitial size of the table
[in,out]dataData to associate with key

Definition at line 1524 of file htable.f90.

Here is the call graph for this function:

◆ htable_cptr_remove()

subroutine htable::htable_cptr_remove ( class(htable_cptr_t), intent(inout), target  this,
type(h_cptr_t), intent(inout key 
)
private
Parameters
[in,out]keyTable key

Definition at line 1578 of file htable.f90.

Here is the call graph for this function:

◆ htable_cptr_set()

subroutine htable::htable_cptr_set ( class(htable_cptr_t), intent(inout), target  this,
type(h_cptr_t), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyTable key
[in,out]dataData associated with key

Definition at line 1539 of file htable.f90.

Here is the call graph for this function:

◆ htable_eq_key()

pure logical function htable::htable_eq_key ( class(htable_t), intent(in this,
integer, intent(in idx,
class(*), intent(in key 
)
private
Parameters
[in]idxTable index
[in]keyKey to compare against the key at idx

Definition at line 599 of file htable.f90.

Here is the caller graph for this function:

◆ htable_free()

subroutine htable::htable_free ( class(htable_t), intent(inout this)
private

Definition at line 276 of file htable.f90.

Here is the caller graph for this function:

◆ htable_get()

integer function htable::htable_get ( class(htable_t), intent(inout this,
class(*), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyKey to retrieve
[in,out]dataRetrieved data

Definition at line 436 of file htable.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ htable_get_data()

subroutine htable::htable_get_data ( class(htable_t), intent(in this,
integer, intent(in idx,
class(*), intent(inout data 
)
private
Parameters
[in]idxTable index
[in,out]dataData to retrieve

Definition at line 555 of file htable.f90.

Here is the caller graph for this function:

◆ htable_i4_get()

integer function htable::htable_i4_get ( class(htable_i4_t), intent(inout this,
integer, intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyKey to retrieve
[in,out]dataRetrieved data

Definition at line 791 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4_hash()

pure integer function htable::htable_i4_hash ( class(htable_i4_t), intent(in this,
class(*), intent(in k,
integer, value  c 
)
private

Definition at line 802 of file htable.f90.

◆ htable_i4_init()

subroutine htable::htable_i4_init ( class(htable_i4_t), intent(inout this,
integer, value  size,
class(*), intent(inout), optional  data 
)
private
Parameters
sizeInitial size of the table
[in,out]dataData to associate with key

Definition at line 766 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4_remove()

subroutine htable::htable_i4_remove ( class(htable_i4_t), intent(inout this,
integer, intent(inout key 
)
private
Parameters
[in,out]keyTable key

Definition at line 832 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4_set()

subroutine htable::htable_i4_set ( class(htable_i4_t), intent(inout this,
integer, intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyTable key
[in,out]dataData associated with key

Definition at line 781 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4t2_get()

integer function htable::htable_i4t2_get ( class(htable_i4t2_t), intent(inout this,
type(tuple_i4_t), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyKey to retrieve
[in,out]dataRetrieved data

Definition at line 1283 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4t2_hash()

pure integer function htable::htable_i4t2_hash ( class(htable_i4t2_t), intent(in this,
class(*), intent(in k,
integer, value  c 
)
private

Definition at line 1294 of file htable.f90.

◆ htable_i4t2_init()

subroutine htable::htable_i4t2_init ( class(htable_i4t2_t), intent(inout this,
integer, value  size,
class(*), intent(inout), optional  data 
)
private
Parameters
sizeInitial size of the table
[in,out]dataData to associate with key

Definition at line 1258 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4t2_remove()

subroutine htable::htable_i4t2_remove ( class(htable_i4t2_t), intent(inout this,
type(tuple_i4_t), intent(inout key 
)
private
Parameters
[in,out]keyTable key

Definition at line 1331 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4t2_set()

subroutine htable::htable_i4t2_set ( class(htable_i4t2_t), intent(inout this,
type(tuple_i4_t), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyTable key
[in,out]dataData associated with key

Definition at line 1273 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4t4_get()

integer function htable::htable_i4t4_get ( class(htable_i4t4_t), intent(inout this,
type(tuple4_i4_t), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyKey to retrieve
[in,out]dataRetrieved data

Definition at line 1412 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4t4_hash()

pure integer function htable::htable_i4t4_hash ( class(htable_i4t4_t), intent(in this,
class(*), intent(in k,
integer, value  c 
)
private

Definition at line 1423 of file htable.f90.

◆ htable_i4t4_init()

subroutine htable::htable_i4t4_init ( class(htable_i4t4_t), intent(inout this,
integer, value  size,
class(*), intent(inout), optional  data 
)
private
Parameters
sizeInitial size of the table
[in,out]dataData to associate with key

Definition at line 1387 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4t4_remove()

subroutine htable::htable_i4t4_remove ( class(htable_i4t4_t), intent(inout this,
type(tuple4_i4_t), intent(inout key 
)
private
Parameters
[in,out]keyTable key

Definition at line 1460 of file htable.f90.

Here is the call graph for this function:

◆ htable_i4t4_set()

subroutine htable::htable_i4t4_set ( class(htable_i4t4_t), intent(inout this,
type(tuple4_i4_t), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyTable key
[in,out]dataData associated with key

Definition at line 1402 of file htable.f90.

Here is the call graph for this function:

◆ htable_i8_get()

integer function htable::htable_i8_get ( class(htable_i8_t), intent(inout this,
integer(kind=i8), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyKey to retrieve
[in,out]dataRetrieved data

Definition at line 913 of file htable.f90.

Here is the call graph for this function:

◆ htable_i8_hash()

pure integer function htable::htable_i8_hash ( class(htable_i8_t), intent(in this,
class(*), intent(in k,
integer, value  c 
)
private
Note
I think this hash might be better

Definition at line 924 of file htable.f90.

◆ htable_i8_init()

subroutine htable::htable_i8_init ( class(htable_i8_t), intent(inout this,
integer, value  size,
class(*), intent(inout), optional  data 
)
private
Parameters
sizeInitial size of the table
[in,out]dataData to associate with key

Definition at line 888 of file htable.f90.

Here is the call graph for this function:

◆ htable_i8_remove()

subroutine htable::htable_i8_remove ( class(htable_i8_t), intent(inout this,
integer(kind=i8), intent(inout key 
)
private
Parameters
[in,out]keyTable key

Definition at line 955 of file htable.f90.

Here is the call graph for this function:

◆ htable_i8_set()

subroutine htable::htable_i8_set ( class(htable_i8_t), intent(inout this,
integer(kind=i8), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyTable key
[in,out]dataData associated with key

Definition at line 903 of file htable.f90.

Here is the call graph for this function:

◆ htable_init()

subroutine htable::htable_init ( class(htable_t), intent(inout this,
integer, value  size,
class(*), intent(in), target  key,
class(*), intent(in), optional, target  data 
)
Parameters
sizeInitial size of the table
[in]keyType of key
[in]dataType of data

Definition at line 242 of file htable.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ htable_iter_cptr_free()

subroutine htable::htable_iter_cptr_free ( type(htable_iter_cptr_t), intent(inout this)
private

Definition at line 1596 of file htable.f90.

Here is the caller graph for this function:

◆ htable_iter_cptr_init()

subroutine htable::htable_iter_cptr_init ( class(htable_iter_cptr_t), intent(inout this,
type(htable_cptr_t), intent(inout), target  t 
)
private

Definition at line 1587 of file htable.f90.

◆ htable_iter_cptr_key()

type(h_cptr_t) function, pointer htable::htable_iter_cptr_key ( class(htable_iter_cptr_t), intent(inout), target  this)
private

Definition at line 1619 of file htable.f90.

◆ htable_iter_cptr_value()

type(h_cptr_t) function, pointer htable::htable_iter_cptr_value ( class(htable_iter_cptr_t), intent(inout), target  this)
private

Definition at line 1603 of file htable.f90.

◆ htable_iter_data()

subroutine htable::htable_iter_data ( class(htable_iter_t), intent(inout), target  this,
class(*), intent(inout data 
)
private
Attention
this will make a deep copy of the data...
Todo:
Remove once we figure out how to do this with value() for arbitrary data types
Parameters
[in,out]dataData to retrieve

Definition at line 717 of file htable.f90.

◆ htable_iter_i4_free()

subroutine htable::htable_iter_i4_free ( type(htable_iter_i4_t), intent(inout this)
private

Definition at line 850 of file htable.f90.

Here is the caller graph for this function:

◆ htable_iter_i4_init()

subroutine htable::htable_iter_i4_init ( class(htable_iter_i4_t), intent(inout this,
type(htable_i4_t), intent(inout), target  t 
)
private

Definition at line 841 of file htable.f90.

◆ htable_iter_i4_key()

integer function, pointer htable::htable_iter_i4_key ( class(htable_iter_i4_t), intent(inout), target  this)
private

Definition at line 871 of file htable.f90.

◆ htable_iter_i4_value()

integer function, pointer htable::htable_iter_i4_value ( class(htable_iter_i4_t), intent(inout), target  this)
private

Definition at line 857 of file htable.f90.

◆ htable_iter_i4t2_free()

subroutine htable::htable_iter_i4t2_free ( type(htable_iter_i4t2_t), intent(inout this)
private

Definition at line 1349 of file htable.f90.

Here is the caller graph for this function:

◆ htable_iter_i4t2_init()

subroutine htable::htable_iter_i4t2_init ( class(htable_iter_i4t2_t), intent(inout this,
type(htable_i4t2_t), intent(inout), target  t 
)
private

Definition at line 1340 of file htable.f90.

◆ htable_iter_i4t2_key()

type(tuple_i4_t) function, pointer htable::htable_iter_i4t2_key ( class(htable_iter_i4t2_t), intent(inout this)
private

Definition at line 1370 of file htable.f90.

◆ htable_iter_i4t2_value()

type(tuple_i4_t) function, pointer htable::htable_iter_i4t2_value ( class(htable_iter_i4t2_t), intent(inout this)
private

Definition at line 1356 of file htable.f90.

◆ htable_iter_i4t4_free()

subroutine htable::htable_iter_i4t4_free ( type(htable_iter_i4t4_t), intent(inout this)
private

Definition at line 1478 of file htable.f90.

Here is the caller graph for this function:

◆ htable_iter_i4t4_init()

subroutine htable::htable_iter_i4t4_init ( class(htable_iter_i4t4_t), intent(inout this,
type(htable_i4t4_t), intent(inout), target  t 
)
private

Definition at line 1469 of file htable.f90.

◆ htable_iter_i4t4_key()

type(tuple4_i4_t) function, pointer htable::htable_iter_i4t4_key ( class(htable_iter_i4t4_t), intent(inout), target  this)
private

Definition at line 1499 of file htable.f90.

◆ htable_iter_i4t4_value()

type(tuple4_i4_t) function, pointer htable::htable_iter_i4t4_value ( class(htable_iter_i4t4_t), intent(inout), target  this)
private

Definition at line 1485 of file htable.f90.

◆ htable_iter_i8_free()

subroutine htable::htable_iter_i8_free ( type(htable_iter_i8_t), intent(inout this)
private

Definition at line 973 of file htable.f90.

Here is the caller graph for this function:

◆ htable_iter_i8_init()

subroutine htable::htable_iter_i8_init ( class(htable_iter_i8_t), intent(inout this,
type(htable_i8_t), intent(inout), target  t 
)
private

Definition at line 964 of file htable.f90.

◆ htable_iter_i8_key()

integer(kind=i8) function, pointer htable::htable_iter_i8_key ( class(htable_iter_i8_t), intent(inout), target  this)
private

Definition at line 994 of file htable.f90.

◆ htable_iter_i8_value()

integer(kind=i8) function, pointer htable::htable_iter_i8_value ( class(htable_iter_i8_t), intent(inout), target  this)
private

Definition at line 980 of file htable.f90.

◆ htable_iter_next()

logical function htable::htable_iter_next ( class(htable_iter_t), intent(inout), target  this)
private

Definition at line 689 of file htable.f90.

◆ htable_iter_pt_free()

subroutine htable::htable_iter_pt_free ( type(htable_iter_pt_t), intent(inout this)
private

Definition at line 1220 of file htable.f90.

Here is the caller graph for this function:

◆ htable_iter_pt_init()

subroutine htable::htable_iter_pt_init ( class(htable_iter_pt_t), intent(inout this,
type(htable_pt_t), intent(inout), target  t 
)
private

Definition at line 1211 of file htable.f90.

◆ htable_iter_pt_key()

type(point_t) function, pointer htable::htable_iter_pt_key ( class(htable_iter_pt_t), intent(inout), target  this)
private

Definition at line 1241 of file htable.f90.

◆ htable_iter_pt_value()

type(point_t) function, pointer htable::htable_iter_pt_value ( class(htable_iter_pt_t), intent(inout), target  this)
private

Definition at line 1227 of file htable.f90.

◆ htable_iter_r8_free()

subroutine htable::htable_iter_r8_free ( type(htable_iter_r8_t), intent(inout this)
private

Definition at line 1089 of file htable.f90.

Here is the caller graph for this function:

◆ htable_iter_r8_init()

subroutine htable::htable_iter_r8_init ( class(htable_iter_r8_t), intent(inout this,
type(htable_r8_t), intent(inout), target  t 
)
private

Definition at line 1080 of file htable.f90.

◆ htable_iter_r8_key()

real(kind=dp) function, pointer htable::htable_iter_r8_key ( class(htable_iter_r8_t), intent(inout), target  this)
private

Definition at line 1110 of file htable.f90.

◆ htable_iter_r8_value()

real(kind=dp) function, pointer htable::htable_iter_r8_value ( class(htable_iter_r8_t), intent(inout), target  this)
private

Definition at line 1096 of file htable.f90.

◆ htable_iter_reset()

subroutine htable::htable_iter_reset ( class(htable_iter_t), intent(inout this)
private

Definition at line 708 of file htable.f90.

◆ htable_num_entries()

pure integer function htable::htable_num_entries ( class(htable_t), intent(in this)
private

Definition at line 310 of file htable.f90.

◆ htable_pt_get()

integer function htable::htable_pt_get ( class(htable_pt_t), intent(inout this,
type(point_t), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyKey to retrieve
[in,out]dataRetrieved data

Definition at line 1152 of file htable.f90.

Here is the call graph for this function:

◆ htable_pt_hash()

pure integer function htable::htable_pt_hash ( class(htable_pt_t), intent(in this,
class(*), intent(in k,
integer, value  c 
)
private

Definition at line 1163 of file htable.f90.

◆ htable_pt_init()

subroutine htable::htable_pt_init ( class(htable_pt_t), intent(inout this,
integer, value  size,
class(*), intent(inout), optional  data 
)
private
Parameters
sizeInitial size of the table
[in,out]dataData to associate with key

Definition at line 1127 of file htable.f90.

Here is the call graph for this function:

◆ htable_pt_remove()

subroutine htable::htable_pt_remove ( class(htable_pt_t), intent(inout this,
type(point_t), intent(inout key 
)
private
Parameters
[in,out]keyTable key

Definition at line 1201 of file htable.f90.

Here is the call graph for this function:

◆ htable_pt_set()

subroutine htable::htable_pt_set ( class(htable_pt_t), intent(inout this,
type(point_t), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyTable key
[in,out]dataData associated with key

Definition at line 1142 of file htable.f90.

Here is the call graph for this function:

◆ htable_r8_get()

integer function htable::htable_r8_get ( class(htable_r8_t), intent(inout this,
real(kind=dp), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyKey to retrieve
[in,out]dataRetrieved data

Definition at line 1045 of file htable.f90.

Here is the call graph for this function:

◆ htable_r8_hash()

pure integer function htable::htable_r8_hash ( class(htable_r8_t), intent(in this,
class(*), intent(in k,
integer, value  c 
)
private

Definition at line 1056 of file htable.f90.

◆ htable_r8_init()

subroutine htable::htable_r8_init ( class(htable_r8_t), intent(inout this,
integer, value  size,
class(*), intent(inout), optional  data 
)
private
Parameters
sizeInitial size of the table
[in,out]dataData to associate with key

Definition at line 1020 of file htable.f90.

Here is the call graph for this function:

◆ htable_r8_remove()

subroutine htable::htable_r8_remove ( class(htable_r8_t), intent(inout this,
real(kind=dp), intent(inout key 
)
private
Parameters
[in,out]keyTable key

Definition at line 1070 of file htable.f90.

Here is the call graph for this function:

◆ htable_r8_set()

subroutine htable::htable_r8_set ( class(htable_r8_t), intent(inout this,
real(kind=dp), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyTable key
[in,out]dataData associated with key

Definition at line 1035 of file htable.f90.

Here is the call graph for this function:

◆ htable_remove()

subroutine htable::htable_remove ( class(htable_t), intent(inout this,
class(*), intent(inout key 
)
private
Parameters
[in,out]keyKey to remove

Definition at line 469 of file htable.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ htable_set()

recursive subroutine htable::htable_set ( class(htable_t), intent(inout), target  this,
class(*), intent(inout key,
class(*), intent(inout data 
)
private
Parameters
[in,out]keyTable key
[in,out]dataData associated with key

Check if entry at this index is empty or if key matches

Definition at line 325 of file htable.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ htable_set_data()

subroutine htable::htable_set_data ( class(htable_t), intent(inout), target  this,
integer, intent(in idx,
class(*), intent(in data 
)
private
Parameters
[in]idxTable index
[in]dataData to set at idx

Definition at line 509 of file htable.f90.

Here is the caller graph for this function:

◆ htable_set_key()

subroutine htable::htable_set_key ( class(htable_t), intent(inout), target  this,
integer, intent(in idx,
class(*), intent(in key 
)
private
Parameters
[in]idxTable index
[in]keyKey to set at idx

Definition at line 643 of file htable.f90.

Here is the caller graph for this function:

◆ htable_size()

pure integer function htable::htable_size ( class(htable_t), intent(in this)
private

Definition at line 317 of file htable.f90.