Neko 0.9.99
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
htable::htable_cptr_t Type Referenceabstract

C pointer based hash table. More...

Inheritance diagram for htable::htable_cptr_t:
Collaboration diagram for htable::htable_cptr_t:

Public Member Functions

procedure, pass(thisinit (this, size, data)
 Initialize a C pointer based hash table.
 
procedure, pass(thisset (this, key, data)
 Insert a C pointer into the hash table.
 
procedure, pass(thisget (this, key, data)
 Retrive a C pointer with key key from the hash table.
 
procedure, pass(thishash (this, k, c)
 Hash function for an integer 4-tuple hash table.
 
procedure, pass(thisremove (this, key)
 Remove a C pointer with key key from the hash table.
 
procedure(htable_hash), deferred, pass hash (this, k, c)
 
procedure, pass(this), public clear (this)
 Clear all entries in a hash table.
 
procedure, pass(this), public free (this)
 Destroy a hash table.
 
procedure, pass(this), public num_entries (this)
 Return number of entries in the table.
 
procedure, pass(this), public get_size (this)
 Return total size of htable.
 

Private Attributes

integer, private size
 
integer, private entries
 
type(h_tuple_t), dimension(:), allocatable, private t
 

Detailed Description

Definition at line 142 of file htable.f90.

Member Function/Subroutine Documentation

◆ clear()

procedure, pass(this), public htable::htable_t::clear ( class(htable_t), intent(inout this)
inherited

Definition at line 61 of file htable.f90.

◆ free()

procedure, pass(this), public htable::htable_t::free ( class(htable_t), intent(inout this)
inherited

Definition at line 62 of file htable.f90.

◆ get()

procedure, pass(this) htable::htable_cptr_t::get ( class(htable_cptr_t), intent(inout), target  this,
type(h_cptr_t), intent(inout key,
class(*), intent(inout data 
)
Parameters
[in,out]keyKey to retrieve
[in,out]dataRetrieved data

Definition at line 146 of file htable.f90.

◆ get_size()

procedure, pass(this), public htable::htable_t::get_size ( class(htable_t), intent(in this)
inherited

Definition at line 64 of file htable.f90.

◆ hash() [1/2]

procedure(htable_hash), deferred, pass htable::htable_t::hash ( class(htable_t), intent(in this,
class(*), intent(in k,
integer, value  c 
)
pure virtualinherited

Definition at line 60 of file htable.f90.

◆ hash() [2/2]

procedure, pass(this) htable::htable_cptr_t::hash ( class(htable_cptr_t), intent(in this,
class(*), intent(in k,
integer, value  c 
)

Definition at line 147 of file htable.f90.

◆ init()

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

Definition at line 144 of file htable.f90.

◆ num_entries()

procedure, pass(this), public htable::htable_t::num_entries ( class(htable_t), intent(in this)
inherited

Definition at line 63 of file htable.f90.

◆ remove()

procedure, pass(this) htable::htable_cptr_t::remove ( class(htable_cptr_t), intent(inout), target  this,
type(h_cptr_t), intent(inout key 
)
Parameters
[in,out]keyTable key

Definition at line 148 of file htable.f90.

◆ set()

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

Definition at line 145 of file htable.f90.

Member Data Documentation

◆ entries

integer, private htable::htable_t::entries
privateinherited

Definition at line 57 of file htable.f90.

◆ size

integer, private htable::htable_t::size
privateinherited

Definition at line 56 of file htable.f90.

◆ t

type(h_tuple_t), dimension(:), allocatable, private htable::htable_t::t
privateinherited

Definition at line 58 of file htable.f90.


The documentation for this type was generated from the following file: