Documentation
¶
Overview ¶
Package interpreter implements functions to interpreter.
Index ¶
- type Interpreter
- func (i *Interpreter) Array(na *ast.Array, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) ArrayInfix(operator string, left, right runtime.Data) (runtime.Data, error)
- func (i *Interpreter) ArraySubscript(array, index runtime.Data) runtime.Data
- func (i *Interpreter) As(na *ast.As, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) Assign(na *ast.Assign, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) AssignSubscript(ns *ast.Subscript, original runtime.Data, value runtime.Data, ...) (runtime.Data, error)
- func (i *Interpreter) BitwiseNotPrefix(data runtime.Data) (runtime.Data, error)
- func (i *Interpreter) BlockStatement(nb *ast.BlockStatement, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) BooleanInfix(operator string, left, right runtime.Data) (runtime.Data, error)
- func (i *Interpreter) Dictionary(nd *ast.Dictionary, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) DictionaryInfix(operator string, left, right runtime.Data) (runtime.Data, error)
- func (i *Interpreter) DictionarySubscript(dictionary, index runtime.Data) runtime.Data
- func (i *Interpreter) FloatInfix(operator string, left, right float64) (runtime.Data, error)
- func (i *Interpreter) ForArray(nr *ast.Repeat, array *runtime.TArray, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) ForDictionary(nr *ast.Repeat, dictionary *runtime.TDictionary, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) Function(nf *ast.FunctionCall, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) Identifier(ni *ast.Identifier, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) If(ni *ast.If, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) InfixExpression(ni *ast.InfixExpression, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) IntegerInfix(operator string, left, right runtime.Data) (runtime.Data, error)
- func (i *Interpreter) Interpreter(ni ast.Node, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) Is(ni *ast.Is, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) Match(nm *ast.Match, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) MatchWhen(whens []*ast.MatchWhen, control runtime.Data, sc *runtime.Scope) (*ast.MatchWhen, error)
- func (i *Interpreter) MinusPrefix(data runtime.Data) (runtime.Data, error)
- func (i *Interpreter) Module(nm *ast.Module, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) ModuleAccess(na *ast.ModuleAccess, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) NilInfix(operator string, left, right runtime.Data) (runtime.Data, error)
- func (i *Interpreter) Pipe(np *ast.Pipe, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) PrefixExpression(np *ast.PrefixExpression, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) Program(np *ast.Program, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) RangeIntegerInfix(left, right int64) runtime.Data
- func (i *Interpreter) RangeStringInfix(left, right string) (runtime.Data, error)
- func (i *Interpreter) Repeat(nr *ast.Repeat, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) RepeatInfinite(nr *ast.Repeat, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) RuntimeFunction(nf *ast.FunctionCall, fn runtime.TRuntimeFn, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) StringInfix(operator string, left, right string) (runtime.Data, error)
- func (i *Interpreter) StringSubscript(str, index runtime.Data) (runtime.Data, error)
- func (i *Interpreter) Subscript(ns *ast.Subscript, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) Use(nu *ast.Use, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) Val(nl *ast.Val, sc *runtime.Scope) runtime.Data
- func (i *Interpreter) Var(nv *ast.Var, sc *runtime.Scope) runtime.Data
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Interpreter ¶
type Interpreter struct {
// contains filtered or unexported fields
}
func New ¶
func New() *Interpreter
func (*Interpreter) ArrayInfix ¶
func (*Interpreter) ArraySubscript ¶
func (i *Interpreter) ArraySubscript(array, index runtime.Data) runtime.Data
func (*Interpreter) AssignSubscript ¶
func (*Interpreter) BitwiseNotPrefix ¶
func (*Interpreter) BlockStatement ¶
func (i *Interpreter) BlockStatement(nb *ast.BlockStatement, sc *runtime.Scope) runtime.Data
func (*Interpreter) BooleanInfix ¶
func (*Interpreter) Dictionary ¶
func (i *Interpreter) Dictionary(nd *ast.Dictionary, sc *runtime.Scope) runtime.Data
func (*Interpreter) DictionaryInfix ¶
func (*Interpreter) DictionarySubscript ¶
func (i *Interpreter) DictionarySubscript(dictionary, index runtime.Data) runtime.Data
func (*Interpreter) FloatInfix ¶
func (*Interpreter) ForDictionary ¶
func (i *Interpreter) ForDictionary(nr *ast.Repeat, dictionary *runtime.TDictionary, sc *runtime.Scope) runtime.Data
func (*Interpreter) Function ¶
func (i *Interpreter) Function(nf *ast.FunctionCall, sc *runtime.Scope) runtime.Data
func (*Interpreter) Identifier ¶
func (i *Interpreter) Identifier(ni *ast.Identifier, sc *runtime.Scope) runtime.Data
func (*Interpreter) InfixExpression ¶
func (i *Interpreter) InfixExpression(ni *ast.InfixExpression, sc *runtime.Scope) runtime.Data
func (*Interpreter) IntegerInfix ¶
func (*Interpreter) Interpreter ¶
func (*Interpreter) MinusPrefix ¶
func (*Interpreter) ModuleAccess ¶
func (i *Interpreter) ModuleAccess(na *ast.ModuleAccess, sc *runtime.Scope) runtime.Data
func (*Interpreter) PrefixExpression ¶
func (i *Interpreter) PrefixExpression(np *ast.PrefixExpression, sc *runtime.Scope) runtime.Data
func (*Interpreter) RangeIntegerInfix ¶
func (i *Interpreter) RangeIntegerInfix(left, right int64) runtime.Data
func (*Interpreter) RangeStringInfix ¶
func (i *Interpreter) RangeStringInfix(left, right string) (runtime.Data, error)
func (*Interpreter) RepeatInfinite ¶
func (*Interpreter) RuntimeFunction ¶
func (i *Interpreter) RuntimeFunction(nf *ast.FunctionCall, fn runtime.TRuntimeFn, sc *runtime.Scope) runtime.Data
func (*Interpreter) StringInfix ¶
func (*Interpreter) StringSubscript ¶
Click to show internal directories.
Click to hide internal directories.