package object import "fmt" type Builtin struct { Name string Fn BuiltinFunction } func (b Builtin) Bool() bool { return true } func (b Builtin) Type() Type { return BuiltinType } func (b Builtin) Inspect() string { return fmt.Sprintf("", b.Name) } func (b Builtin) Compare(other Object) int { if obj, ok := other.(Builtin); ok { if b.Name > obj.Name { return 1 } if b.Name == obj.Name { return 0 } return -1 } return -1 } func (b Builtin) String() string { return b.Inspect() }