def flatten_fits_bounds

bendtorch-core@0.1.0.0 · src/shape/PROOF.bend:61

import bendtorch-core@0.1.0.0/src/shape/PROOF.bend as PROOF
import Base
import bendtorch-core@0.1.0.0/src/shape/core.bend as Shape

61def flatten_fits_bounds(+shape: Shape.Shape, +values: List<&2, U32>, verdict: Shape.BoolCase<Shape.fit_words(Shape.dimensions(shape), values)>,
62  outside: {Shape.fit_words(Shape.dimensions(shape), values) == False{} : Bool}) ->
63  {Shape.flatten_checked.fits(shape, values, verdict) == Fail{Shape.CoordinateOutOfBounds{}} : Result<&2, &2, Shape.Error, Shape.FlatIndex<shape>>}:
64  match verdict:
65    case Shape.BFalse{equal}:
66      {==}
67    case Shape.BTrue{equal}:
68      Empty.absurd({Shape.flatten_checked.fits(shape, values, Shape.BTrue{equal}) == Fail{Shape.CoordinateOutOfBounds{}} : Result<&2, &2, Shape.Error, Shape.FlatIndex<shape>>},
69        Shape.clash(Equal.trans(Bool, True{}, Shape.fit_words(Shape.dimensions(shape), values), False{}, equal, outside)))

Uses (14)

Used by (1)