diff options
| author | Marc Vertes <mvertes@free.fr> | 2024-04-02 11:27:13 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-02 11:27:13 +0200 |
| commit | 1bff92c52b27b9a516599e172fe9852c3d99be38 (patch) | |
| tree | 26b30b5ec1a5537dcafd806d23e03a062475705d /parser/interpreter.go | |
| parent | 362f7c9c45598b429c92e67756f41b690043e0c4 (diff) | |
chore: add linters and some lint fixes (#8)
* chore: add linters and some lint fixes
Configure some golangci-lint linters to get the code quality right.
Apply the first fixes.
Next step will be to add github actions to run lint and tests in
github CI.
* chore: more lint, fixed comments and variable names. no semantic change.
* chore: add Makefile
This makefile is intended to be used as a local substitute to github
actions.
Diffstat (limited to 'parser/interpreter.go')
| -rw-r--r-- | parser/interpreter.go | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/parser/interpreter.go b/parser/interpreter.go index d820416..e6ac95c 100644 --- a/parser/interpreter.go +++ b/parser/interpreter.go @@ -9,15 +9,18 @@ import ( const debug = true +// Interpreter represents the state of an interpreter. type Interpreter struct { *Compiler *vm.Machine } +// NewInterpreter returns a new interpreter state. func NewInterpreter(s *scanner.Scanner) *Interpreter { return &Interpreter{NewCompiler(s), &vm.Machine{}} } +// Eval interprets a src program and return the last produced value if any, or an error. func (i *Interpreter) Eval(src string) (res reflect.Value, err error) { codeOffset := len(i.Code) dataOffset := 0 |
