Skip to main content

Module node

Module node 

Source
Expand description

The parse tree: Node and its supporting vocabulary.

Every node carries its byte span into the source string — span provenance is structural (the G0-3 ratification’s §11.3 requirement), not an afterthought: the span map that downstream consumers (isolate, tex_to_color_map, TransformMatchingTex) use is derived from these spans, so no node may ever be constructed without one.

Structs§

Delim
A delimiter as named after \left, \right, or a \big-class command.
FracSpec
The generalized-fraction flavors (rule 15’s inputs).
Node
One parse-tree node: a kind plus the byte span it came from.
Span
A half-open byte range [start, end) into the source string.

Enums§

AccentKind
The accent commands (both true accents and the wide over/under class).
DelimSize
The four fixed delimiter sizes of the \big family.
FragmentKind
The structural fragments the top level tolerates (per-argument SingleStringTex semantics).
Limits
How a big operator places its scripts.
LineAlign
How the lines of a multi-line block are aligned horizontally within the block’s width (the widest line’s width).
MathFont
The argument-taking math alphabet commands.
NodeKind
What a node is. See the module docs; every variant is produced by crate::parse / crate::parse_text with full span provenance.
PhantomKind
The phantom flavors.
SpaceKind
The explicit spacing commands.
StackKind
The \stackrel/\overset/\underset family.
TextStyle
The text-mode styling islands of the TexText contract.