package object import ( "fmt" ) type Boolean struct { Value bool } func (b *Boolean) Type() ObjectType { return BOOLEAN_OBJ } func (b *Boolean) Inspect() string { return fmt.Sprintf("%t", b.Value) } func (b *Boolean) Clone() Object { return &Boolean{Value: b.Value} } func (b *Boolean) String() string { return b.Inspect() } func (b *Boolean) Equal(other Object) bool { if obj, ok := other.(*Boolean); ok { return b.Value == obj.Value } return false }