Added in 1.9.4

$hash(text, B)

Returns a hash number based on text where B is the number of bits to use when calculating the hash number.

Parameters
Added in 1.9.0

table(ktable). |*Parameter*|*Description*|
$hget(name|N)

Returns name of a hash table if it exists, or returns the name of the Nth hash table.

See also /hsave, /hload, /hmake, /hfree, /hdel, $hfind.

Parameters

Parameter Description
name|N Name of the hashtable or If N = 0, number of hashtables, otherwise the Nth hashtable name.

Properties

Property Description
.size Returns the size of the hashtable as specified in /hmake.

Example

; Create a hashtable.
/hmake Example

; Print number of hashtables.
//echo -ag $hget(0)

; Print name and size of the first hashtable.
//echo -ag $hget(1) - $hget(1).size

$hget(name|N, item|N, [&binvar])

Returns the data associated with an item in the specified hash table.

Parameters

Parameter Description
name|N Name of the hashtable or the Nth hashtable name.
item|N Name of the item or if N = 0 number of items, otherwise the Nth item.
[&binvar] Assigns the contents of the item to a &binvar. (optional)

Properties

Property Description
.data Returns the item value.
.item Returns the item name.
.unset Returns number of seconds before the item is automatically removed (if set).
.hash TODO
.state TODO

Example

; Create a hashtable
/hmake Example

; Add a item to the hashtable
/hadd Example ExampleItem ExampleValue

; Print number of items in the hastable.
//echo -ag $hget(Example, 0)

; Print information about the first item in the hashtable.
//echo -ag Name is $hget(Example, 1).item Value is $hget(Example, 1).data Unset at $hget(Example, 1).unset

table(ktable). |*Parameter*|*Description*| | text | Text to hash. | | B | Number of bits to use. (min 2, max 32) |