Multipart.params.step: def of bend-kit-multipart@0.3.0.0 Import: import bend-kit-multipart@0.3.0.0/multipart.bend as Multipart Lines 66-110 of bend-kit-multipart@0.3.0.0/multipart.bend: https://jend.leeeet.dev/read.txt?path=bend-kit-multipart@0.3.0.0/multipart.bend&start_line=66&end_line=110 import Base def params.step(st: PS, k: Cls, +c: U32) -> PS: PS{mode, key, val, acc} = st match mode: case PKey{}: match k: case CEq{}: PS{PStart{}, key, SNil{}, acc} case CSemi{}: PS{PKey{}, SNil{}, SNil{}, acc} case CSp{}: PS{PKey{}, key, val, acc} case _: PS{PKey{}, SCon{Char.to_lower(Chr{c}), key}, val, acc} case PStart{}: match k: case CQuote{}: PS{PQuo{}, key, SNil{}, acc} case CSp{}: PS{PStart{}, key, val, acc} case CSemi{}: PS{PKey{}, SNil{}, SNil{}, params.emit(key, SNil{}, acc)} case _: PS{PTok{}, key, SCon{Chr{c}, SNil{}}, acc} case PQuo{}: match k: case CSlash{}: PS{PEsc{}, key, val, acc} case CQuote{}: PS{PSkip{}, SNil{}, SNil{}, params.emit(key, val, acc)} case _: PS{PQuo{}, key, SCon{Chr{c}, val}, acc} case PEsc{}: PS{PQuo{}, key, SCon{Chr{c}, val}, acc} case PTok{}: match k: case CSemi{}: PS{PKey{}, SNil{}, SNil{}, params.emit(key, String.trim_start(val), acc)} case _: PS{PTok{}, key, SCon{Chr{c}, val}, acc} case PSkip{}: match k: case CSemi{}: PS{PKey{}, SNil{}, SNil{}, acc} case _: PS{PSkip{}, key, val, acc} Uses (9): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Char https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Char.to_lower https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=String https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=String.trim_start https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=bend-kit-multipart@0.3.0.0/multipart.bend&name=Cls https://jend.leeeet.dev/definition.txt?path=bend-kit-multipart@0.3.0.0/multipart.bend&name=PS https://jend.leeeet.dev/definition.txt?path=bend-kit-multipart@0.3.0.0/multipart.bend&name=Pm https://jend.leeeet.dev/definition.txt?path=bend-kit-multipart@0.3.0.0/multipart.bend&name=params.emit