def relative_result

bend-collections@1.0.0.0 · src/containers/doubly_linked_list.bend:108

import bend-collections@1.0.0.0/src/containers/doubly_linked_list.bend as DoublyLinkedList
import Base
import bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend as R
import bend-collections@1.0.0.0/src/containers/types/internal_dlist.bend as I
import bend-collections@1.0.0.0/src/containers/types/doubly_linked_list.bend as E

108def relative_result(~T: Data, +tag: U32, depth: Nat, +cap: U32, gens: Array<U32>, r: R.DList<T> & Result<&2, &2, I.Error, I.Handle>) -> DList<T> & E.Obs<T>:
109  match r:
110    case Tuple{raw, Fail{e}}:
111      (DL{tag, depth, cap, raw, gens}, E.OInsert{Fail{error(e)}})
112    case Tuple{raw, Done{I.H{owner, +id}}}:
113      relative_done(~T, inserted_room(~T, tag, depth, cap, raw, gens, id, U32.is_eq(id, cap)))

Uses (15)

Used by (3)