def valid_bounds
bend-collections@1.0.0.0 · src/containers/doubly_linked_list.bend:61
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/doubly_linked_list.bend as E
61def valid_bounds(~T: Data, tag: U32, depth: Nat, cap: U32, raw: R.DList<T>, gens: Array<U32>, id: U32, expected: U32, same: Bool, inside: Bool) -> DList<T> & Maybe<&2, E.Error>:
62 match same inside:
63 case False{} _:
64 (DL{tag, depth, cap, raw, gens}, Some{E.ForeignHandle{}})
65 case True{} False{}:
66 (DL{tag, depth, cap, raw, gens}, Some{E.StaleHandle{}})
67 case True{} True{}:
68 valid_gen(~T, tag, depth, cap, raw, expected, Array.get(U32, gens, id))