def jpeg.huff.read

gralha-jpeg-decode@0.1.0.1 · jpeg.bend:68

import gralha-jpeg-decode@0.1.0.1/jpeg.bend as Jpeg
import Base
import gralha-bytes@0.1.0.1/bytes.bend as Bin

68def jpeg.huff.read(node: Bin.Huffman, stream: JPEGStream) -> JPEGRead:
69  match node:
70    case Bin.HuffEmpty{}: JPEGRead{0, jpeg.stream.invalid(stream)}
71    case Bin.HuffBad{}: JPEGRead{0, jpeg.stream.invalid(stream)}
72    case Bin.HuffLeaf{symbol}: JPEGRead{symbol, stream}
73    case Bin.HuffNode{zero, one}: jpeg.huff.next(jpeg.bits(stream, 1), zero, one, node => input => jpeg.huff.read(node, input))

Uses (6)

Used by (5)