Module

lexer.classifiers.thematic

Thematic break classifier mixin.

Classes

ThematicClassifierMixin 2
Mixin providing thematic break classification.

Mixin providing thematic break classification.

Methods

Internal Methods 2
_location_from 3 SourceLocation
Get source location from saved position. Implemented by Lexer.
def _location_from(self, start_pos: int, start_col: int | None = None, end_pos: int | None = None) -> SourceLocation
Parameters
Name Type Description
start_pos
start_col Default:None
end_pos Default:None
Returns
SourceLocation
_try_classify_thematic_break 3 Token | None
Try to classify content as thematic break. Thematic breaks are 3+ of the same …
def _try_classify_thematic_break(self, content: str, line_start: int, indent: int = 0) -> Token | None

Try to classify content as thematic break.

Thematic breaks are 3+ of the same character (-, *, _) with optional spaces/tabs between them.

Parameters
Name Type Description
content

Line content with leading whitespace stripped

line_start

Position in source where line starts

indent

Number of leading spaces (for line_indent)

Default:0
Returns
Token | None Token if valid break, None otherwise.