~/bend-docscommunity

spec/containers/balanced_search_tree/recursive.bend checks

raw source on the hub · import bend-collections-laws-containers@1.0.0.0/spec/containers/balanced_search_tree/recursive.bend as Recursive

3 imports
import Base
import ../../lib/common.bend as C
import ../../../src/containers/types/balanced_search_tree.bend as E

Definitions

def keep source · line 26 · raw

@c:Cmp -> Bool

def keep_at source · line 33 · raw

@-K:Data -> @-V:Data -> @b:Bool -> @+e:0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V> -> @rest:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>

def find_at source · line 48 · raw

@-K:Data -> @-V:Data -> @c:Cmp -> @+e:0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V> -> @rest:Maybe<&2, V> -> Maybe<&2, V>

def lb_at source · line 63 · raw

@-K:Data -> @-V:Data -> @c:Cmp -> @+e:0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V> -> @rest:Maybe<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> Maybe<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>

def in_range source · line 78 · raw

@lo_key:Cmp -> @key_hi:Cmp -> Bool

def value source · line 89 · raw

@-V:Data -> @m:Maybe<&2, V> -> Result<&2, &2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Error, V>

def entry source · line 96 · raw

@-K:Data -> @-V:Data -> @m:Maybe<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> @err:0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Error -> Result<&2, &2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Error, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>

def is_some source · line 103 · raw

@-V:Data -> @m:Maybe<&2, V> -> Bool

def cons_obs source · line 140 · raw

@-K:Data -> @-V:Data -> @o:0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Obs<K, V> -> @r:Pair(List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>, List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Obs<K, V>>) -> Pair(List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>, List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Obs<K, V>>)

Templates

template ins_at source · line 9 · raw

@-K:Data -> @-cmp:(@_:K -> @_:K -> Cmp) -> @-V:Data -> @c:Cmp -> @+k:K -> @+v:V -> @+e:0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V> -> @t:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> @rest:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>

template ins source · line 19 · raw

@-K:Data -> @-cmp:(@_:K -> @_:K -> Cmp) -> @-V:Data -> @+k:K -> @+v:V -> @xs:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>

Map k to v: replace the entry with key k, or insert it in key order.

template del source · line 41 · raw

@-K:Data -> @-cmp:(@_:K -> @_:K -> Cmp) -> @-V:Data -> @+k:K -> @xs:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>

Entries whose key is not k.

template find source · line 56 · raw

@-K:Data -> @-cmp:(@_:K -> @_:K -> Cmp) -> @-V:Data -> @+k:K -> @xs:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> Maybe<&2, V>

Value of the first entry with key k.

template lower source · line 71 · raw

@-K:Data -> @-cmp:(@_:K -> @_:K -> Cmp) -> @-V:Data -> @+k:K -> @xs:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> Maybe<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>

First entry whose key is >= k.

template range source · line 82 · raw

@-K:Data -> @-cmp:(@_:K -> @_:K -> Cmp) -> @-V:Data -> @+lo:K -> @+hi:K -> @xs:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>

Entries with lo <= key < hi, in order.

template remove_at source · line 110 · raw

@-K:Data -> @-cmp:(@_:K -> @_:K -> Cmp) -> @-V:Data -> @m:Maybe<&2, V> -> @+k:K -> @+xs:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> Pair(List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Obs<K, V>)

template step source · line 117 · raw

@-K:Data -> @-cmp:(@_:K -> @_:K -> Cmp) -> @-V:Data -> @+xs:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> @op:0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Op<K, V> -> Pair(List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Obs<K, V>)

template run source · line 144 · raw

@-K:Data -> @-cmp:(@_:K -> @_:K -> Cmp) -> @-V:Data -> @ops:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Op<K, V>> -> @+xs:List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>> -> Pair(List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Entry<K, V>>, List<&2, 0x5c489f5d9646d7cc9aa3dd8137e9dc07/src/containers/types/balanced_search_tree.Obs<K, V>>)