def jpeg.file.segment
gralha-jpeg-decode@0.1.0.1 · jpeg.bend:582
import gralha-jpeg-decode@0.1.0.1/jpeg.bend as Jpeg
import Base
import gralha-text-scan@0.1.0.1/scan.bend as U
import gralha-bytes@0.1.0.1/bytes.bend as Bin
582def jpeg.file.segment(+src: Bin.Bytes, +at: U32, +end: U32, +tag: U32, +frame: JPEGFrame) -> JPEGDecoded:
583 U.branch(JPEGDecoded, U32.is_eq(tag, 218), _ => jpeg.scan.decode(src, at, end, frame),
584 _ => JPEGDecoded{U.branch(JPEGFrame, U32.is_eq(tag, 219), _ => jpeg.quant.segment(src, at, end, frame),
585 _ => U.branch(JPEGFrame, U32.is_eq(tag, 196), _ => jpeg.huff.segment(src, at, end, frame),
586 _ => U.branch(JPEGFrame, U32.is_eq(tag, 192) || U32.is_eq(tag, 193) || U32.is_eq(tag, 194), _ => jpeg.frame.start(src, at, end, frame, tag),
587 _ => U.branch(JPEGFrame, (U32.is_ge(tag, 192) && U32.is_le(tag, 207)) || U32.is_eq(tag, 220), _ => jpeg.frame.invalid(frame), _ => jpeg.frame.misc(frame, src, at, end, tag))))), end})