Expand description
Shared, quote-aware ISO 10303-21 header record and schema reading. The export writer and analytic processing use the same lexical rules.
Structs§
- Lex
- A monotonically advancing scan of one byte buffer.
Constants§
- MAX_
HEADER_ BYTES - The bounded source-header reader’s maximum scan window.
Functions§
- declared_
schema - Read the first declared schema identifier from the complete header.
- declared_
schema_ bounded - Read the first declared schema identifier from a bounded header window.
- declared_
schemas - Read all declared schema identifiers from the complete header.
- declared_
schemas_ bounded - Read schema identifiers from a bounded header window.
- decode_
opt_ string - Decode one argument to a string, or
Nonefor$(unset),*(derived) or empty. - decode_
opt_ string_ list decode_string_list, but an unset ($,*) or missing argument isNonerather than an empty list, so a writer can tell “never stated” from a literal()(#5470).- decode_
string_ list - Decode a list argument (
('a','b',...)).$/empty yield an empty list, and unset entries are dropped. A bare single value where a list was expected is tolerated, as on the TS side. - extract_
record_ args - Extract the argument substring inside the parentheses of
KEYWORD( ... ). Quote- and nesting-aware, so a quoted)never closes the record early. - find_
record_ open - Find the opening parenthesis of an exact record keyword outside literals/comments, ignoring ASCII case.
- find_
section_ marker - Locate an exact section marker such as
ENDSEC;orDATA;. - split_
top_ level - Split STEP record arguments at top-level commas, respecting paren/bracket
nesting and single-quoted strings (with
''escapes). Returns the raw, still-escaped argument substrings, trimmed.