def ascend_step_node
bend-collections@1.0.0.0 · src/containers/balanced_search_tree.bend:560
import bend-collections@1.0.0.0/src/containers/balanced_search_tree.bend as BalancedSearchTree
import Base
560def ascend_step_node(~K: Data, ~V: Data, ~cmp: K -> K -> Cmp, +x: Nat, +p: Nat, +forward: Bool, r: TreeMap<K, V, cmp> & Node<K>) -> TreeMap<K, V, cmp> & Ascend:
561 match r:
562 case Tuple{m, Free{next}}:
563 (m, Ascend{0n, 0n, True{}})
564 case Tuple{m, N{c, l, r, q, key}}:
565 (m, ascend_choice(p, p, q, Nat.is_eq(x, pick(Nat, forward, l, r))))