ast

package
v0.0.0-...-92c1b66 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 8, 2024 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ArrayLiteral

type ArrayLiteral struct {
	Token    token.Token // the `[` token
	Elements []Expression
}

func (*ArrayLiteral) Debug

func (al *ArrayLiteral) Debug() string

func (*ArrayLiteral) String

func (al *ArrayLiteral) String() string

func (*ArrayLiteral) TokenLiteral

func (al *ArrayLiteral) TokenLiteral() string

type AsyncLiteral

type AsyncLiteral struct {
	Token token.Token
	Name  string
	Block *BlockStatement
}

func (*AsyncLiteral) Debug

func (al *AsyncLiteral) Debug() string

func (*AsyncLiteral) String

func (al *AsyncLiteral) String() string

func (*AsyncLiteral) TokenLiteral

func (al *AsyncLiteral) TokenLiteral() string

type BeginLiteral

type BeginLiteral struct {
	Token token.Token
	Name  string
	Block *BlockStatement
}

func (*BeginLiteral) Debug

func (bl *BeginLiteral) Debug() string

func (*BeginLiteral) String

func (bl *BeginLiteral) String() string

func (*BeginLiteral) TokenLiteral

func (bl *BeginLiteral) TokenLiteral() string

type BlockStatement

type BlockStatement struct {
	Token      token.Token // the { token
	Statements []Statement
}

func (*BlockStatement) Debug

func (bs *BlockStatement) Debug() string

func (*BlockStatement) String

func (bs *BlockStatement) String() string

func (*BlockStatement) TokenLiteral

func (bs *BlockStatement) TokenLiteral() string

type Boolean

type Boolean struct {
	Token token.Token
	Value bool
}

func (*Boolean) Code

func (b *Boolean) Code() string

func (*Boolean) Debug

func (b *Boolean) Debug() string

func (*Boolean) String

func (b *Boolean) String() string

func (*Boolean) TokenLiteral

func (b *Boolean) TokenLiteral() string

type CallExpression

type CallExpression struct {
	Token     token.Token // the '(' token
	Function  Expression  // Identifier or FunctionLiteral
	Arguments []Expression
}

func (*CallExpression) Debug

func (ce *CallExpression) Debug() string

func (*CallExpression) String

func (ce *CallExpression) String() string

func (*CallExpression) TokenLiteral

func (ce *CallExpression) TokenLiteral() string

type CustomLiteral

type CustomLiteral struct {
	Token      token.Token
	Name       string
	Parameters []*Identifier
	Body       *BlockStatement
}

func (*CustomLiteral) Debug

func (cl *CustomLiteral) Debug() string

func (*CustomLiteral) String

func (cl *CustomLiteral) String() string

func (*CustomLiteral) TokenLiteral

func (cl *CustomLiteral) TokenLiteral() string

type EnvExpression

type EnvExpression struct {
	Token token.Token // The 'procces' token
	Name  string
	Value string
}

func (*EnvExpression) Debug

func (e *EnvExpression) Debug() string

func (*EnvExpression) String

func (e *EnvExpression) String() string

func (*EnvExpression) TokenLiteral

func (e *EnvExpression) TokenLiteral() string

type EvalLiteral

type EvalLiteral struct {
	Token   token.Token
	Content Expression
}

func (*EvalLiteral) Debug

func (el *EvalLiteral) Debug() string

func (*EvalLiteral) String

func (el *EvalLiteral) String() string

func (*EvalLiteral) TokenLiteral

func (el *EvalLiteral) TokenLiteral() string

type ExceptionExpression

type ExceptionExpression struct {
	Token      token.Token
	ErrorBlock *BlockStatement
	Begin      string
	Condition  Expression
}

func (*ExceptionExpression) Debug

func (ee *ExceptionExpression) Debug() string

func (*ExceptionExpression) String

func (ee *ExceptionExpression) String() string

func (*ExceptionExpression) TokenLiteral

func (ee *ExceptionExpression) TokenLiteral() string

type Expression

type Expression interface {
	Node
	// contains filtered or unexported methods
}

type ExpressionStatement

type ExpressionStatement struct {
	Token      token.Token // the first token of the expression
	Expression Expression
}

func (*ExpressionStatement) Debug

func (es *ExpressionStatement) Debug() string

func (*ExpressionStatement) Self

func (es *ExpressionStatement) Self() Expression

func (*ExpressionStatement) String

func (es *ExpressionStatement) String() string

func (*ExpressionStatement) TokenLiteral

func (es *ExpressionStatement) TokenLiteral() string

type FinalExpression

type FinalExpression struct {
	Token token.Token
	Begin string
	Block *BlockStatement
}

func (*FinalExpression) Debug

func (fe *FinalExpression) Debug() string

func (*FinalExpression) String

func (fe *FinalExpression) String() string

func (*FinalExpression) TokenLiteral

func (fe *FinalExpression) TokenLiteral() string

type FloatLiteral

type FloatLiteral struct {
	Token token.Token
	Value float64
}

func (*FloatLiteral) Debug

func (il *FloatLiteral) Debug() string

func (*FloatLiteral) String

func (il *FloatLiteral) String() string

func (*FloatLiteral) TokenLiteral

func (il *FloatLiteral) TokenLiteral() string

type ForExpression

type ForExpression struct {
	Token       token.Token // the `for` token
	LoopToken   token.Token // in or ;(semicolon)
	Init        Expression
	Key         Expression
	Value       Expression
	Condition   Expression
	Increment   Expression
	Consequence Expression
}

func (*ForExpression) Debug

func (fe *ForExpression) Debug() string

func (*ForExpression) String

func (fe *ForExpression) String() string

func (*ForExpression) TokenLiteral

func (fe *ForExpression) TokenLiteral() string

type FunctionLiteral

type FunctionLiteral struct {
	Token      token.Token // The 'fn' token
	Parameters []*Identifier
	Body       *BlockStatement
}

func (*FunctionLiteral) Debug

func (fl *FunctionLiteral) Debug() string

func (*FunctionLiteral) String

func (fl *FunctionLiteral) String() string

func (*FunctionLiteral) TokenLiteral

func (fl *FunctionLiteral) TokenLiteral() string

type HashLiteral

type HashLiteral struct {
	Token token.Token // the `{` token
	Pairs map[Expression]Expression
}

func (*HashLiteral) Debug

func (hl *HashLiteral) Debug() string

func (*HashLiteral) String

func (hl *HashLiteral) String() string

func (*HashLiteral) TokenLiteral

func (hl *HashLiteral) TokenLiteral() string

type Identifier

type Identifier struct {
	Token token.Token // the token.IDENT token
	Value string
}

func (*Identifier) Debug

func (i *Identifier) Debug() string

func (*Identifier) String

func (i *Identifier) String() string

func (*Identifier) TokenLiteral

func (i *Identifier) TokenLiteral() string

type IfExpression

type IfExpression struct {
	Token       token.Token // The 'if' token
	Condition   Expression
	Consequence *BlockStatement
	Alternative *BlockStatement
}

func (*IfExpression) Debug

func (ie *IfExpression) Debug() string

func (*IfExpression) String

func (ie *IfExpression) String() string

func (*IfExpression) TokenLiteral

func (ie *IfExpression) TokenLiteral() string

type IndexExpression

type IndexExpression struct {
	Token token.Token // The [ token
	Left  Expression
	Index Expression
}

func (*IndexExpression) Debug

func (ie *IndexExpression) Debug() string

func (*IndexExpression) String

func (ie *IndexExpression) String() string

func (*IndexExpression) TokenLiteral

func (ie *IndexExpression) TokenLiteral() string

type InfixExpression

type InfixExpression struct {
	Token    token.Token // The operator tokne, e.g. +
	Left     Expression
	Operator string
	Right    Expression
}

func (*InfixExpression) Debug

func (oe *InfixExpression) Debug() string

func (*InfixExpression) String

func (oe *InfixExpression) String() string

func (*InfixExpression) TokenLiteral

func (oe *InfixExpression) TokenLiteral() string

type IntegerLiteral

type IntegerLiteral struct {
	Token token.Token
	Value int64
}

func (*IntegerLiteral) Debug

func (il *IntegerLiteral) Debug() string

func (*IntegerLiteral) String

func (il *IntegerLiteral) String() string

func (*IntegerLiteral) TokenLiteral

func (il *IntegerLiteral) TokenLiteral() string

type LetStatement

type LetStatement struct {
	Token token.Token // the token.LET token
	Name  *Identifier
	Value Expression
}

func (*LetStatement) Debug

func (ls *LetStatement) Debug() string

func (*LetStatement) String

func (ls *LetStatement) String() string

func (*LetStatement) TokenLiteral

func (ls *LetStatement) TokenLiteral() string

type LoadStatement

type LoadStatement struct {
	Token      token.Token
	Name       string
	Statements []Statement
}

func (*LoadStatement) Debug

func (ll *LoadStatement) Debug() string

func (*LoadStatement) String

func (ll *LoadStatement) String() string

func (*LoadStatement) TokenLiteral

func (ll *LoadStatement) TokenLiteral() string

type LoopExpression

type LoopExpression struct {
	Token       token.Token // The 'if' token
	Condition   Expression
	Consequence *BlockStatement
}

func (*LoopExpression) Debug

func (le *LoopExpression) Debug() string

func (*LoopExpression) String

func (le *LoopExpression) String() string

func (*LoopExpression) TokenLiteral

func (le *LoopExpression) TokenLiteral() string

type Node

type Node interface {
	TokenLiteral() string
	String() string
	Debug() string
}

type PrefixExpression

type PrefixExpression struct {
	Token    token.Token // The prefix token, e.g. !
	Operator string
	Right    Expression
}

func (*PrefixExpression) Debug

func (pe *PrefixExpression) Debug() string

func (*PrefixExpression) String

func (pe *PrefixExpression) String() string

func (*PrefixExpression) TokenLiteral

func (pe *PrefixExpression) TokenLiteral() string

type ProcessExpression

type ProcessExpression struct {
	Token      token.Token // The 'procces' token
	Definition Expression
	Process    Expression
	Path       Expression
	Params     Expression
}

func (*ProcessExpression) Debug

func (pl *ProcessExpression) Debug() string

func (*ProcessExpression) String

func (pl *ProcessExpression) String() string

func (*ProcessExpression) TokenLiteral

func (pl *ProcessExpression) TokenLiteral() string

type Program

type Program struct {
	Statements []Statement
}

func (*Program) Debug

func (p *Program) Debug() string

func (*Program) String

func (p *Program) String() string

func (*Program) TokenLiteral

func (p *Program) TokenLiteral() string

type RecoverExpression

type RecoverExpression struct {
	Token      token.Token
	Begin      string
	ErrorIdent string
	Block      *BlockStatement
}

func (*RecoverExpression) Debug

func (re *RecoverExpression) Debug() string

func (*RecoverExpression) String

func (re *RecoverExpression) String() string

func (*RecoverExpression) TokenLiteral

func (re *RecoverExpression) TokenLiteral() string

type ReturnStatement

type ReturnStatement struct {
	Token       token.Token // the `return` token
	ReturnValue Expression
}

func (*ReturnStatement) Debug

func (rs *ReturnStatement) Debug() string

func (*ReturnStatement) String

func (rs *ReturnStatement) String() string

func (*ReturnStatement) TokenLiteral

func (rs *ReturnStatement) TokenLiteral() string

type RouteLiteral

type RouteLiteral struct {
	Token  token.Token
	Config Expression
}

func (*RouteLiteral) Debug

func (rl *RouteLiteral) Debug() string

func (*RouteLiteral) String

func (rl *RouteLiteral) String() string

func (*RouteLiteral) TokenLiteral

func (rl *RouteLiteral) TokenLiteral() string

type ScopeChangeExpression

type ScopeChangeExpression struct {
	Token token.Token // The 'scope' token
	Left  string
	Right string
	Value Statement
}

func (*ScopeChangeExpression) Debug

func (sce *ScopeChangeExpression) Debug() string

func (*ScopeChangeExpression) String

func (sce *ScopeChangeExpression) String() string

func (*ScopeChangeExpression) TokenLiteral

func (sce *ScopeChangeExpression) TokenLiteral() string

type ScopeExpression

type ScopeExpression struct {
	Token     token.Token // The 'scope' token
	Left      string
	Right     string
	Arguments []Expression
}

func (*ScopeExpression) Debug

func (ss *ScopeExpression) Debug() string

func (*ScopeExpression) String

func (ss *ScopeExpression) String() string

func (*ScopeExpression) TokenLiteral

func (ss *ScopeExpression) TokenLiteral() string

type ScopeLiteral

type ScopeLiteral struct {
	Token token.Token // The 'scope' token
	Name  string
	Body  *BlockStatement
}

func (*ScopeLiteral) Debug

func (sl *ScopeLiteral) Debug() string

func (*ScopeLiteral) String

func (sl *ScopeLiteral) String() string

func (*ScopeLiteral) TokenLiteral

func (sl *ScopeLiteral) TokenLiteral() string

type SignalExpression

type SignalExpression struct {
	Token token.Token // the token.SIGNAL token
	Name  *Identifier
	Value string
}

func (*SignalExpression) Debug

func (ss *SignalExpression) Debug() string

func (*SignalExpression) String

func (ss *SignalExpression) String() string

func (*SignalExpression) TokenLiteral

func (ss *SignalExpression) TokenLiteral() string

type SocketExpression

type SocketExpression struct {
	Token      token.Token // The 'sock' token
	Definition string
	Host       string
	Port       string
	ConType    string
	Debugger   bool
}

func (*SocketExpression) Debug

func (s *SocketExpression) Debug() string

func (*SocketExpression) String

func (s *SocketExpression) String() string

func (*SocketExpression) TokenLiteral

func (s *SocketExpression) TokenLiteral() string

type Statement

type Statement interface {
	Node
	// contains filtered or unexported methods
}

type StringLiteral

type StringLiteral struct {
	Token token.Token
	Value string
}

func (*StringLiteral) Debug

func (sl *StringLiteral) Debug() string

func (*StringLiteral) String

func (sl *StringLiteral) String() string

func (*StringLiteral) TokenLiteral

func (sl *StringLiteral) TokenLiteral() string

type ThisExpression

type ThisExpression struct {
	Token token.Token // The 'scope' token
	Name  *Identifier
}

func (*ThisExpression) Debug

func (te *ThisExpression) Debug() string

func (*ThisExpression) String

func (te *ThisExpression) String() string

func (*ThisExpression) TokenLiteral

func (te *ThisExpression) TokenLiteral() string

type WaitExpression

type WaitExpression struct {
	Token token.Token
	Async string
	Block *BlockStatement
}

func (*WaitExpression) Debug

func (we *WaitExpression) Debug() string

func (*WaitExpression) String

func (we *WaitExpression) String() string

func (*WaitExpression) TokenLiteral

func (we *WaitExpression) TokenLiteral() string

type WhileExpression

type WhileExpression struct {
	Token       token.Token // The 'if' token
	Condition   Expression
	Consequence *BlockStatement
}

func (*WhileExpression) Debug

func (le *WhileExpression) Debug() string

func (*WhileExpression) String

func (le *WhileExpression) String() string

func (*WhileExpression) TokenLiteral

func (le *WhileExpression) TokenLiteral() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL