refactor objects
Some checks failed
Publish Image / publish (push) Waiting to run
Test / build (push) Waiting to run
Build / build (push) Has been cancelled

This commit is contained in:
2024-04-01 17:34:10 -04:00
parent 803f330e82
commit 99f7553d67
15 changed files with 101 additions and 94 deletions

View File

@@ -32,10 +32,24 @@ func (b Boolean) Inspect() string {
return fmt.Sprintf("%t", b.Value)
}
func (b Boolean) Clone() Object {
// Copy implements the Copyable interface
func (b Boolean) Copy() Object {
return Boolean{Value: b.Value}
}
// Hash implements the Hasher interface
func (b Boolean) Hash() HashKey {
var value uint64
if b.Value {
value = 1
} else {
value = 0
}
return HashKey{Type: b.Type(), Value: value}
}
func (b Boolean) String() string {
return b.Inspect()
}