Refactor Type to be an int
This commit is contained in:
@@ -10,7 +10,7 @@ func Abs(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"abs", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Accept(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"accept", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ func Assert(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"assert", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.BOOLEAN_OBJ, object.STRING_OBJ),
|
||||
typing.WithTypes(object.BooleanType, object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ func Bin(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"bin", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Bind(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"bind", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.INTEGER_OBJ, object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType, object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Chr(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"chr", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Close(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"close", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Connect(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"connect", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.INTEGER_OBJ, object.STRING_OBJ),
|
||||
typing.WithTypes(object.IntegerType, object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ func Divmod(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"divmod", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.INTEGER_OBJ, object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType, object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ func Exit(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"exit", args,
|
||||
typing.RangeOfArgs(0, 1),
|
||||
typing.WithTypes(object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ func FFI(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"ffi", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.STRING_OBJ, object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType, object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ func Find(args ...object.Object) object.Object {
|
||||
if haystack, ok := args[0].(*object.String); ok {
|
||||
if err := typing.Check(
|
||||
"find", args,
|
||||
typing.WithTypes(object.STRING_OBJ, object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType, object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
@@ -46,7 +46,7 @@ func Find(args ...object.Object) object.Object {
|
||||
}
|
||||
|
||||
return newError(
|
||||
"TypeError: find() expected argument #1 to be `array` or `str` got `%s`",
|
||||
"TypeError: find() expected argument #1 to be `array` or `str` got `%d`",
|
||||
args[0].Type(),
|
||||
)
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ func First(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"first", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.ARRAY_OBJ),
|
||||
typing.WithTypes(object.ArrayType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ func Hex(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"hex", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ func Input(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"input", args,
|
||||
typing.RangeOfArgs(0, 1),
|
||||
typing.WithTypes(object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Join(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"join", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.ARRAY_OBJ, object.STRING_OBJ),
|
||||
typing.WithTypes(object.ArrayType, object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ func Last(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"last", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.ARRAY_OBJ),
|
||||
typing.WithTypes(object.ArrayType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Listen(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"listen", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.INTEGER_OBJ, object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType, object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Lower(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"lower", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Max(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"max", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.ARRAY_OBJ),
|
||||
typing.WithTypes(object.ArrayType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
@@ -23,7 +23,7 @@ func Max(args ...object.Object) object.Object {
|
||||
if i, ok := e.(*object.Integer); ok {
|
||||
xs = append(xs, int(i.Value))
|
||||
} else {
|
||||
return newError("item #%d not an `int` got=%s", n, e.Type())
|
||||
return newError("item #%d not an `int` got=%d", n, e.Type())
|
||||
}
|
||||
}
|
||||
sort.Ints(xs)
|
||||
|
||||
@@ -11,7 +11,7 @@ func Min(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"min", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.ARRAY_OBJ),
|
||||
typing.WithTypes(object.ArrayType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
@@ -23,7 +23,7 @@ func Min(args ...object.Object) object.Object {
|
||||
if i, ok := e.(*object.Integer); ok {
|
||||
xs = append(xs, int(i.Value))
|
||||
} else {
|
||||
return newError("item #%d not an `int` got=%s", n, e.Type())
|
||||
return newError("item #%d not an `int` got=%d", n, e.Type())
|
||||
}
|
||||
}
|
||||
sort.Ints(xs)
|
||||
|
||||
@@ -12,7 +12,7 @@ func Oct(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"oct", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -55,7 +55,7 @@ func Open(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"open", args,
|
||||
typing.RangeOfArgs(1, 2),
|
||||
typing.WithTypes(object.STRING_OBJ, object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType, object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ func Ord(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"ord", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ func Pop(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"pop", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.ARRAY_OBJ),
|
||||
typing.WithTypes(object.ArrayType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ func Pow(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"pow", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.INTEGER_OBJ, object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType, object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Print(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"print", args,
|
||||
typing.MinimumArgs(1),
|
||||
typing.WithTypes(object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ func Push(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"push", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.ARRAY_OBJ),
|
||||
typing.WithTypes(object.ArrayType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ func Read(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"read", args,
|
||||
typing.RangeOfArgs(1, 2),
|
||||
typing.WithTypes(object.INTEGER_OBJ, object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType, object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func ReadFile(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"readfile", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ func Rest(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"rest", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.ARRAY_OBJ),
|
||||
typing.WithTypes(object.ArrayType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ func Reversed(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"reversed", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.ARRAY_OBJ),
|
||||
typing.WithTypes(object.ArrayType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Seek(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"seek", args,
|
||||
typing.RangeOfArgs(1, 3),
|
||||
typing.WithTypes(object.INTEGER_OBJ, object.INTEGER_OBJ, object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType, object.IntegerType, object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ func Socket(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"socket", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Sorted(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"sort", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.ARRAY_OBJ),
|
||||
typing.WithTypes(object.ArrayType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Split(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"split", args,
|
||||
typing.RangeOfArgs(1, 2),
|
||||
typing.WithTypes(object.STRING_OBJ, object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType, object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -14,5 +14,5 @@ func TypeOf(args ...object.Object) object.Object {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
return &object.String{Value: string(args[0].Type())}
|
||||
return &object.String{Value: args[0].Type().String()}
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Upper(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"upper", args,
|
||||
typing.ExactArgs(1),
|
||||
typing.WithTypes(object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func Write(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"write", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.INTEGER_OBJ, object.INTEGER_OBJ),
|
||||
typing.WithTypes(object.IntegerType, object.IntegerType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func WriteFile(args ...object.Object) object.Object {
|
||||
if err := typing.Check(
|
||||
"writefile", args,
|
||||
typing.ExactArgs(2),
|
||||
typing.WithTypes(object.STRING_OBJ, object.STRING_OBJ),
|
||||
typing.WithTypes(object.StringType, object.StringType),
|
||||
); err != nil {
|
||||
return newError(err.Error())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user