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

Uses (12)

Used by (1)