type Scan
import emerging-ezhttp@0.21.0.0/src/unescape.bend as Unescapeimport Base
11# where the scan stands: in text, after `&`, after `&#`, after `&#x` (the `x`
12# or `X` kept), inside a number (hexadecimal or not, its value so far), or
13# inside a name (its text so far and how many characters it has)
14type Scan is Data:
15 Txt{}
16 Amp{}
17 Hash{}
18 HashX{x: Char}
19 Num{hex: Bool, n: U32}
20 Name{text: String, len: Nat}