Unescape.step: def of emerging-ezhttp@0.21.0.0 Import: import emerging-ezhttp@0.21.0.0/src/unescape.bend as Unescape Lines 301-315 of emerging-ezhttp@0.21.0.0/src/unescape.bend: https://jend.leeeet.dev/read.txt?path=emerging-ezhttp@0.21.0.0/src/unescape.bend&start_line=301&end_line=315 import Base # one character where the scan stands def step(st: Scan, +c: Char, k: Scan -> String) -> String: match st: case Txt{}: text(c, k) case Amp{}: amp(c, k, Char.is_eq(c, '#')) case Hash{}: hash(c, k, digit(False{}, c)) case HashX{x}: hash.hex(x, c, k, digit(True{}, c)) case Num{+hex, n}: num(hex, n, c, k, digit(hex, c), U32.is_lt(digit(hex, c), 16)) case Name{s, len}: name(s, len, c, k, Char.is_eq(c, ';')) Uses (13): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Char https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Char.is_eq https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=String https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.is_lt https://jend.leeeet.dev/definition.txt?path=emerging-ezhttp@0.21.0.0/src/unescape.bend&name=Scan https://jend.leeeet.dev/definition.txt?path=emerging-ezhttp@0.21.0.0/src/unescape.bend&name=amp https://jend.leeeet.dev/definition.txt?path=emerging-ezhttp@0.21.0.0/src/unescape.bend&name=digit https://jend.leeeet.dev/definition.txt?path=emerging-ezhttp@0.21.0.0/src/unescape.bend&name=hash https://jend.leeeet.dev/definition.txt?path=emerging-ezhttp@0.21.0.0/src/unescape.bend&name=hash.hex https://jend.leeeet.dev/definition.txt?path=emerging-ezhttp@0.21.0.0/src/unescape.bend&name=name https://jend.leeeet.dev/definition.txt?path=emerging-ezhttp@0.21.0.0/src/unescape.bend&name=num https://jend.leeeet.dev/definition.txt?path=emerging-ezhttp@0.21.0.0/src/unescape.bend&name=text