from dataclasses import dataclass, field from enum import Enum, auto from typing import Callable, Dict, List, Optional def main() -> int: ... SLS_NAME: str SLS_VERSION: str SLS_COMMIT: str INTERPRETER_NAME: str INTERPRETER_VER: int MODULE_TIMESTAMP: str SLS_INFO_STRING_1: str SLS_INFO_STRING_2: str class LexerInfo: filename: str source_code: str pos: int column: int line: int def __init__(self, filename: str = "", source_code: str = ""): ... class TokenType(Enum): EOF = auto() IDENTIFIER = auto() INTEGER = auto() FLOAT = auto() DOUBLE = auto() CHARACTER = auto() STRING = auto() BOOLEAN = auto() ARRAY = auto() TOKEN_STRING = auto() TYPE_TUPLE = auto() @dataclass class Identifier: name: str is_literal: bool class IntegerBuiltInType(Enum): I64 = auto() I32 = auto() I16 = auto() I8 = auto() U64 = auto() U32 = auto() U16 = auto() U8 = auto() @dataclass class IntegerLiteral: value: int type: IntegerBuiltInType @dataclass class TokenString: tokens: List["Token"] = field(default_factory=list) def deep_copy(self) -> TokenString: ... @dataclass class Token: type: TokenType identifier: Optional[Identifier] = None integer_literal: Optional[IntegerLiteral] = None float_literal: Optional[float] = None double_literal: Optional[float] = None character_literal: Optional[int] = None string_literal: Optional[str] = None boolean_literal: Optional[bool] = None token_string: Optional[TokenString] = None def lexical_analysis(lexer_info: LexerInfo) -> List[Token]: ... class StackType(Enum): IDENTIFIER = auto() I64 = auto() I32 = auto() I16 = auto() I8 = auto() U64 = auto() U32 = auto() U16 = auto() U8 = auto() FLOAT = auto() DOUBLE = auto() CHARACTER = auto() BOOLEAN = auto() TOKEN_STRING = auto() CALLABLE = auto() @dataclass class StackEntry: type: StackType value: object class FunctionType(Enum): TOKEN_STRING = auto() BUILTIN = auto() @dataclass class FunctionItem: type: FunctionType token_string: Optional[TokenString] = None builtin: Optional[Callable[["InterpreterState"], bool]] = None @classmethod def from_token_string(cls, ts: TokenString) -> "FunctionItem": ... @classmethod def from_builtin(cls, fn: Callable[["InterpreterState"], bool]) -> "FunctionItem": ... class InterpreterState: stack: List[StackEntry] functions: Dict[str, FunctionItem] def __init__(self): ... def push(self, entry: StackEntry) -> None: ... def pop(self) -> Optional[StackEntry]: ... def top(self) -> Optional[StackEntry]: ... def add_function(self, name: str, item: FunctionItem) -> None: ... def get_function(self, name: str) -> Optional[FunctionItem]: ... def push_token(self, token: Token) -> bool: ... def execute_func(self, key: str) -> bool: ... def execute_token_string(self, token_string: TokenString) -> bool: ... def execute(self, token: Token) -> bool: ...