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>>)