Versions in this module Expand all Collapse all v0 v0.1.0 Jun 14, 2026 Changes in this version + const AND + const ASSIGN + const BITWISE + const CALL + const EQUALS + const LESSGREATER + const LOWEST + const OR + const PREFIX + const PRODUCT + const SUM + var WellKnownFunctions = map[string]FunctionSignature + func GetParameterName(functionName string, paramIndex int) string + func ParseNumber(s string) (float64, error) + type AxisExpression struct + Axis string + Token Token + func (ae *AxisExpression) String() string + func (ae *AxisExpression) TokenLiteral() string + type BlockStatement struct + Statements []Statement + Token Token + func (bs *BlockStatement) String() string + func (bs *BlockStatement) TokenLiteral() string + type BracketExpression struct + BracketType string + Expression Expression + Token Token + func (be *BracketExpression) String() string + func (be *BracketExpression) TokenLiteral() string + type CallExpression struct + Arguments []Expression + Function Expression + Token Token + func (ce *CallExpression) String() string + func (ce *CallExpression) TokenLiteral() string + type CommandStatement struct + Args []Expression + Command string + Token Token + func (cs *CommandStatement) String() string + func (cs *CommandStatement) TokenLiteral() string + type Expression interface + type ExpressionStatement struct + Expression Expression + Token Token + func (es *ExpressionStatement) String() string + func (es *ExpressionStatement) TokenLiteral() string + type FunctionDeclaration struct + Body *BlockStatement + Name string + Parameters []string + Token Token + func (fd *FunctionDeclaration) String() string + func (fd *FunctionDeclaration) TokenLiteral() string + type FunctionSignature struct + Name string + ParamNames []string + func GetFunctionSignature(name string) *FunctionSignature + type Identifier struct + Token Token + Value string + func (i *Identifier) String() string + func (i *Identifier) TokenLiteral() string + type IfStatement struct + Alternative *BlockStatement + Condition Expression + Consequence *BlockStatement + Token Token + func (is *IfStatement) String() string + func (is *IfStatement) TokenLiteral() string + type InfixExpression struct + Left Expression + Operator string + Right Expression + Token Token + func (ie *InfixExpression) String() string + func (ie *InfixExpression) TokenLiteral() string + type KeywordExpression struct + Keyword string + Token Token + func (ke *KeywordExpression) String() string + func (ke *KeywordExpression) TokenLiteral() string + type Lexer struct + func NewLexer(input string, preserveWS bool) *Lexer + func (l *Lexer) AllTokens() []Token + func (l *Lexer) NextToken() Token + type Node interface + String func() string + TokenLiteral func() string + type NumberLiteral struct + Token Token + Value string + func (nl *NumberLiteral) String() string + func (nl *NumberLiteral) TokenLiteral() string + type Parser struct + func NewParser(input string) *Parser + func (p *Parser) Errors() []string + func (p *Parser) ParseProgram() *Program + type PieceDeclaration struct + Names []string + Token Token + func (pd *PieceDeclaration) String() string + func (pd *PieceDeclaration) TokenLiteral() string + type PrefixExpression struct + Operator string + Right Expression + Token Token + func (pe *PrefixExpression) String() string + func (pe *PrefixExpression) TokenLiteral() string + type Preprocessor struct + func NewPreprocessor(fs filesystem.FileSystem, includePaths ...string) *Preprocessor + func (p *Preprocessor) Process(path string) (string, error) + func (p *Preprocessor) ProcessContent(content, baseDir string) (string, error) + type Program struct + Statements []Statement + func (p *Program) String() string + func (p *Program) TokenLiteral() string + type ReturnStatement struct + ReturnValue Expression + Token Token + func (rs *ReturnStatement) String() string + func (rs *ReturnStatement) TokenLiteral() string + type Statement interface + type StaticVarDeclaration struct + Names []string + Token Token + func (sv *StaticVarDeclaration) String() string + func (sv *StaticVarDeclaration) TokenLiteral() string + type StringLiteral struct + Token Token + Value string + func (sl *StringLiteral) String() string + func (sl *StringLiteral) TokenLiteral() string + type Token struct + Column int + Line int + Literal string + Type TokenType + func TokensNoWS(input string) []Token + func (t Token) String() string + type TokenType int + const TOKEN_ACCELERATE + const TOKEN_ALONG + const TOKEN_AMP + const TOKEN_AND + const TOKEN_AROUND + const TOKEN_ASSIGN + const TOKEN_ATTACH_UNIT + const TOKEN_CACHE + const TOKEN_CALL_SCRIPT + const TOKEN_COMMA + const TOKEN_COMMENT + const TOKEN_DECELERATE + const TOKEN_DONT_CACHE + const TOKEN_DONT_SHADE + const TOKEN_DROP_UNIT + const TOKEN_ELSE + const TOKEN_EMIT_SFX + const TOKEN_EOF + const TOKEN_EQ + const TOKEN_EXPLODE + const TOKEN_FROM + const TOKEN_GE + const TOKEN_GET + const TOKEN_GT + const TOKEN_HIDE + const TOKEN_IDENT + const TOKEN_IF + const TOKEN_ILLEGAL + const TOKEN_LBRACE + const TOKEN_LBRACKET + const TOKEN_LE + const TOKEN_LPAREN + const TOKEN_LT + const TOKEN_MINUS + const TOKEN_MOVE + const TOKEN_NE + const TOKEN_NEWLINE + const TOKEN_NOT + const TOKEN_NOW + const TOKEN_NUMBER + const TOKEN_OR + const TOKEN_PERCENT + const TOKEN_PIECE + const TOKEN_PIPE + const TOKEN_PLUS + const TOKEN_RAND + const TOKEN_RBRACE + const TOKEN_RBRACKET + const TOKEN_RETURN + const TOKEN_RPAREN + const TOKEN_SEMICOLON + const TOKEN_SET + const TOKEN_SET_SIGNAL_MASK + const TOKEN_SHADE + const TOKEN_SHOW + const TOKEN_SIGNAL + const TOKEN_SLASH + const TOKEN_SLEEP + const TOKEN_SPEED + const TOKEN_SPIN + const TOKEN_STAR + const TOKEN_START_SCRIPT + const TOKEN_STATIC_VAR + const TOKEN_STOP_SPIN + const TOKEN_STRING + const TOKEN_TO + const TOKEN_TURN + const TOKEN_TYPE + const TOKEN_VAR + const TOKEN_WAIT_FOR_MOVE + const TOKEN_WAIT_FOR_TURN + const TOKEN_WHILE + const TOKEN_WHITESPACE + const TOKEN_X_AXIS + const TOKEN_Y_AXIS + const TOKEN_Z_AXIS + func LookupIdent(ident string) TokenType + func (t TokenType) String() string + type WhileStatement struct + Body *BlockStatement + Condition Expression + Token Token + func (ws *WhileStatement) String() string + func (ws *WhileStatement) TokenLiteral() string