_MapNode[K: Any #share, V: Any #share, H: HashFunction[K] val]

class val _MapNode[K: Any #share, V: Any #share, H: HashFunction[K] val]

Constructors

empty

new val empty(
  l: U8 val)
: _MapNode[K, V, H] val^

Parameters

  • l: U8 val

Returns


create

new val create(
  es: Array[(_MapNode[K, V, H] val | Array[(K , V)] val | (K , V))] iso,
  nm: U32 val,
  dm: U32 val,
  l: U8 val)
: _MapNode[K, V, H] val^

Parameters

Returns


Public Functions

apply

fun val apply(
  hash: U32 val,
  key: K)
: V ?

Parameters

  • hash: U32 val
  • key: K

Returns

  • V ?

update

fun val update(
  hash: U32 val,
  leaf: (K , V))
: (_MapNode[K, V, H] val , Bool val) ?

Parameters

  • hash: U32 val
  • leaf: (K , V)

Returns


remove

fun val remove(
  hash: U32 val,
  key: K)
: _MapNode[K, V, H] val ?

Parameters

  • hash: U32 val
  • key: K

Returns


entries

fun box entries()
: Array[(_MapNode[K, V, H] val | Array[(K , V)] val | (K , V))] val

Returns


Private Functions

_compressed_index

fun box _compressed_index(
  nm: U32 val,
  dm: U32 val,
  idx: U32 val)
: U32 val

Parameters

Returns