def Scan.close

bend-trace-context@0.2.0.0 · trace_context.bend:2189

import bend-trace-context@0.2.0.0/trace_context.bend as TraceContext
import Base

2189# The current member ends at a comma or with the value. An empty member, or
2190# one of optional whitespace only, is ignored but still numbered; a member
2191# without "=" is refused; otherwise its key and value are validated, trailing
2192# optional whitespace left out of the value.
2193def Scan.close(member: Nat, room: Nat, current: Member, entries: List<&2, StateEntry>) -> Scan:
2194  match current:
2195    case Blank{}:
2196      Scanning{1n+member, room, Blank{}, entries}
2197    case InKey{text}:
2198      Stopped{InvalidEntry{member, MissingEquals{}}}
2199    case InValue{key, text}:
2200      Scan.entry(Scan.validate(key, Value.restore(text)), member, room, entries)

Uses (10)

Used by (2)