Jpeg.jpeg.mcu: def of gralha-jpeg-decode@0.1.0.1 Import: import gralha-jpeg-decode@0.1.0.1/jpeg.bend as Jpeg Lines 441-449 of gralha-jpeg-decode@0.1.0.1/jpeg.bend: https://jend.leeeet.dev/read.txt?path=gralha-jpeg-decode@0.1.0.1/jpeg.bend&start_line=441&end_line=449 import Base import gralha-text-scan@0.1.0.1/scan.bend as U def jpeg.mcu(+xs: List<&2, JPEGComponent>, +tables: List<&2, JPEGHuff>, +single: Bool, +x: U32, +y: U32, stream: JPEGStream) -> JPEGScan: match xs: case Nil{}: JPEGScan{Nil{}, stream} case Con{component, rest}: JPEGComponent{id, h, v, quant, dc, ac, predictor, bw, bh, coefficients, samples} = component +c = {component : JPEGComponent} +hh = U.choose(U32, single, 1, h) +vv = U.choose(U32, single, 1, v) jpeg.scan.part(jpeg.component.blocks(U32.to_nat((hh * vv : U32)), 0, hh, (x * hh : U32), (y * vv : U32), tables, c, stream), input => jpeg.mcu(rest, tables, single, x, y, input)) Uses (12): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.mul https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.to_nat https://jend.leeeet.dev/definition.txt?path=gralha-jpeg-decode@0.1.0.1/jpeg.bend&name=JPEGComponent https://jend.leeeet.dev/definition.txt?path=gralha-jpeg-decode@0.1.0.1/jpeg.bend&name=JPEGHuff https://jend.leeeet.dev/definition.txt?path=gralha-jpeg-decode@0.1.0.1/jpeg.bend&name=JPEGScan https://jend.leeeet.dev/definition.txt?path=gralha-jpeg-decode@0.1.0.1/jpeg.bend&name=JPEGStream https://jend.leeeet.dev/definition.txt?path=gralha-jpeg-decode@0.1.0.1/jpeg.bend&name=jpeg.component.blocks https://jend.leeeet.dev/definition.txt?path=gralha-jpeg-decode@0.1.0.1/jpeg.bend&name=jpeg.scan.part https://jend.leeeet.dev/definition.txt?path=gralha-text-scan@0.1.0.1/scan.bend&name=choose