refactor how repl works
Some checks failed
Build / build (push) Failing after 5m26s
Publish Image / publish (push) Failing after 45s
Test / build (push) Failing after 5m54s

This commit is contained in:
Chuck Smith
2024-03-28 16:51:54 -04:00
parent fc6ceee02c
commit 244b71d245
32 changed files with 612 additions and 476 deletions

View File

@@ -6,7 +6,7 @@ import (
)
// Args ...
func Args(args ...object.Object) object.Object {
func args(args ...object.Object) object.Object {
if err := typing.Check(
"args", args,
typing.ExactArgs(0),
@@ -14,8 +14,8 @@ func Args(args ...object.Object) object.Object {
return newError(err.Error())
}
elements := make([]object.Object, len(object.Arguments))
for i, arg := range object.Arguments {
elements := make([]object.Object, len(object.Args))
for i, arg := range object.Args {
elements[i] = &object.String{Value: arg}
}
return &object.Array{Elements: elements}

View File

@@ -22,7 +22,7 @@ var Builtins = map[string]*object.Builtin{
"int": {Name: "int", Fn: Int},
"str": {Name: "str", Fn: Str},
"type": {Name: "type", Fn: TypeOf},
"args": {Name: "args", Fn: Args},
"args": {Name: "args", Fn: args},
"lower": {Name: "lower", Fn: Lower},
"upper": {Name: "upper", Fn: Upper},
"join": {Name: "join", Fn: Join},