ScanLineResult
Defined in: packages/engine/src/lexer/ExpressionLexer.ts:82
Result from a single line processed by scanDocument(). Combines line classification, tokenized tokens, and inline solve spans into a single structure, eliminating the need for separate classifyLine() findInlineSolves(), and per-line Lexer.reset() calls.
Properties
Section titled “Properties”classification
Section titled “classification”classification: LineClassification;Defined in: packages/engine/src/lexer/ExpressionLexer.ts:92
The line classification.
endOffset
Section titled “endOffset”endOffset: number;Defined in: packages/engine/src/lexer/ExpressionLexer.ts:90
Character offset of the line end (before newline).
inlineSolves
Section titled “inlineSolves”inlineSolves: InlineSolveSpan[];Defined in: packages/engine/src/lexer/ExpressionLexer.ts:96
Inline solve spans found in this line (empty if none).
lineNumber
Section titled “lineNumber”lineNumber: number;Defined in: packages/engine/src/lexer/ExpressionLexer.ts:86
1-based line number within the document.
startOffset
Section titled “startOffset”startOffset: number;Defined in: packages/engine/src/lexer/ExpressionLexer.ts:88
Character offset of the line start within the document.
text: string;Defined in: packages/engine/src/lexer/ExpressionLexer.ts:84
The raw line text (without trailing newline).
tokens
Section titled “tokens”tokens: Token[];Defined in: packages/engine/src/lexer/ExpressionLexer.ts:94
Tokenized tokens (empty array if line is skipped).