def get_checked
bendtorch-core@0.1.0.0 · src/storage/main.bend:68
import bendtorch-core@0.1.0.0/src/storage/main.bend as BendtorchCore
import Base
import bendtorch-core@0.1.0.0/src/storage/model.bend as Model
68def get_checked(+d: Nat, +n: Nat, array: Array<F32>, +i: U32, allowed: Bool,
69 -decision: {allowed == Nat.is_lt(U32.to_nat(i), n) : Bool},
70 -balanced: Model.Balanced(F32, d, array), -valid: {bounds(d, n) == True{} : Bool}) ->
71 Storage & Result<&2, &2, Error, F32>:
72 match allowed:
73 case False{}:
74 (Owned{d, n, array, balanced, valid}, Fail{OutOfBounds{}})
75 case True{}:
76 finish_read(d, n, array, i, Array.get(F32, array, i), {==}, balanced, valid)