def put_found

bend-collections@1.0.0.0 · src/containers/balanced_search_tree.bend:1666

import bend-collections@1.0.0.0/src/containers/balanced_search_tree.bend as BalancedSearchTree
import Base

1666def put_found(~K: Data, ~V: Data, ~cmp: K -> K -> Cmp, +k: K, +v: V, r: TreeMap<K, V, cmp> & Search) -> TreeMap<K, V, cmp> & Result<&2, &2, Rejected<K, V>, Maybe<&2, V>>:
1667  match r:
1668    case Tuple{m, Search{0n, +p, +on_left}}:
1669      put_allocated(~K, ~V, ~cmp, p, on_left, allocate(~K, ~V, ~cmp, m, p, k, v))
1670    case Tuple{m, Search{1n+i, p, on_left}}:
1671      put_replaced(~K, ~V, ~cmp, exchange(~K, ~V, ~cmp, m, 1n+i, Some{v}))

Uses (13)

Used by (1)