evaluator

package
v0.0.0-...-cb985d4 Latest Latest
Warning

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

Go to latest
Published: Nov 16, 2023 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type EvaluateResult

type EvaluateResult struct {
	Diagnostic *diagnostic.DiagnosticBag
	Value      any
}

type Evaluater

type Evaluater struct {
	// contains filtered or unexported fields
}

func NewEvaluater

func NewEvaluater(program *program.BoundProgram, vm map[symbol.VariableSymbol]any) *Evaluater

func (*Evaluater) Assign

func (e *Evaluater) Assign(variable symbol.VariableSymbol, value any)

func (*Evaluater) Evaluate

func (e *Evaluater) Evaluate() any

func (*Evaluater) EvaluateExpression

func (e *Evaluater) EvaluateExpression(node bind.BoundExpression) any

func (*Evaluater) EvaluateExpressionStatement

func (e *Evaluater) EvaluateExpressionStatement(node *bind.BoundExpressStatements)

func (*Evaluater) EvaluateStatement

func (e *Evaluater) EvaluateStatement(body *bind.BoundBlockStatements) any

func (*Evaluater) EvaluateVariableDeclaration

func (e *Evaluater) EvaluateVariableDeclaration(node *bind.BoundVariableDeclaration)

Jump to

Keyboard shortcuts

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