Http.dc.step: def of bend-kit-http@0.38.2.0 Import: import bend-kit-http@0.38.2.0/http.bend as Http Lines 531-551 of bend-kit-http@0.38.2.0/http.bend: https://jend.leeeet.dev/read.txt?path=bend-kit-http@0.38.2.0/http.bend&start_line=531&end_line=551 import Base # One byte c. Done and Bad never look at it, and a data byte is not inspected. def dc.step(st: Dc, +c: U32) -> Dc: match st: case DcBad{}: DcBad{} case DcSize{+acc, seen}: dc.size(acc, seen, c, Bool.and(is_hex(c), U32.is_le(acc, 268435455))) case DcExt{+n}: dc.ext(n, c, U32.is_eq(c, 13)) case DcSizeLf{+n}: dc.size.lf(n, U32.is_eq(c, 10)) case DcDataCr{}: dc.pick(U32.is_eq(c, 13), DcDataLf{}) case DcDataLf{}: dc.pick(U32.is_eq(c, 10), dc.start()) case DcTr{+j}: dc.tr(j, c, U32.is_eq(c, dc.tr.want(j))) case DcData{+k}: dc.data(k, 1) case DcDone{}: DcDone{} Uses (14): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool.and https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.is_eq https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.is_le https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=Dc https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=dc.data https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=dc.ext https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=dc.pick https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=dc.size https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=dc.size.lf https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=dc.start https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=dc.tr https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=dc.tr.want https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=is_hex