ml_switcheroo.compiler.frontends.sass.tokens¶

SASS Tokenizer Definition.

Provides a Regex-based Lexer (SassLexer) that decomposes raw NVIDIA SASS assembly strings into a stream of typed Token objects.

Classes¶

TokenType

Enumeration of valid SASS token types.

Token

Represents a lexical unit.

SassLexer

Regex-based Lexer for NVIDIA SASS assembly.

Module Contents¶

class ml_switcheroo.compiler.frontends.sass.tokens.TokenType(*args, **kwds)[source]¶

Bases: enum.Enum

Enumeration of valid SASS token types.

LABEL_DEF¶
DIRECTIVE¶
COMMENT¶
SEMICOLON¶
COMMA¶
PREDICATE¶
REGISTER¶
MEMORY¶
IMMEDIATE¶
IDENTIFIER¶
class ml_switcheroo.compiler.frontends.sass.tokens.Token[source]¶

Represents a lexical unit.

kind¶

The type of token.

Type:

TokenType

value¶

The raw string content.

Type:

str

line¶

Line number in source (1-based).

Type:

int

column¶

Column number in source (1-based).

Type:

int

kind: TokenType¶
value: str¶
line: int¶
column: int¶
class ml_switcheroo.compiler.frontends.sass.tokens.SassLexer[source]¶

Regex-based Lexer for NVIDIA SASS assembly.

PATTERNS: List[Tuple[TokenType, str]]¶
regex_pairs¶
tokenize(text: str) → Generator[Token, None, None][source]¶

Tokenizes the input string.

Parameters:

text (str) – Raw SASS source code.

Yields:

Token – Token objects.

Raises:

ValueError – If an unrecognized character sequence is encountered.