rearrange builtins
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"fmt"
|
||||
"log"
|
||||
"monkey/ast"
|
||||
"monkey/builtins"
|
||||
"monkey/code"
|
||||
"monkey/object"
|
||||
"sort"
|
||||
@@ -42,7 +43,7 @@ func New() *Compiler {
|
||||
|
||||
symbolTable := NewSymbolTable()
|
||||
|
||||
for i, builtin := range object.BuiltinsIndex {
|
||||
for i, builtin := range builtins.BuiltinsIndex {
|
||||
symbolTable.DefineBuiltin(i, builtin.Name)
|
||||
}
|
||||
|
||||
|
||||
@@ -879,11 +879,11 @@ func TestBuiltins(t *testing.T) {
|
||||
`,
|
||||
expectedConstants: []interface{}{1},
|
||||
expectedInstructions: []code.Instructions{
|
||||
code.Make(code.OpGetBuiltin, 10),
|
||||
code.Make(code.OpGetBuiltin, 11),
|
||||
code.Make(code.OpArray, 0),
|
||||
code.Make(code.OpCall, 1),
|
||||
code.Make(code.OpPop),
|
||||
code.Make(code.OpGetBuiltin, 14),
|
||||
code.Make(code.OpGetBuiltin, 15),
|
||||
code.Make(code.OpArray, 0),
|
||||
code.Make(code.OpConstant, 0),
|
||||
code.Make(code.OpCall, 2),
|
||||
@@ -894,7 +894,7 @@ func TestBuiltins(t *testing.T) {
|
||||
input: `fn() { return len([]) }`,
|
||||
expectedConstants: []interface{}{
|
||||
[]code.Instructions{
|
||||
code.Make(code.OpGetBuiltin, 10),
|
||||
code.Make(code.OpGetBuiltin, 11),
|
||||
code.Make(code.OpArray, 0),
|
||||
code.Make(code.OpCall, 1),
|
||||
code.Make(code.OpReturn),
|
||||
|
||||
Reference in New Issue
Block a user