1
0
mirror of https://github.com/robertkrimen/otto synced 2025-10-12 20:27:30 +08:00

Take out (unused?) _primitiveReference

This commit is contained in:
Robert Krimen 2012-11-05 13:31:18 -08:00
parent 0891542e28
commit 5679347c88

View File

@ -27,7 +27,7 @@ func (self _reference_) Strict() bool {
}
func (self _reference_) Delete() {
// TODO Does nothing, for now?
panic("Here be dragons.")
}
type _argumentReference struct {
@ -103,38 +103,3 @@ func (self *_objectReference) Delete() {
}
self.Base.delete(self.name, self.Strict())
}
type _primitiveReference struct {
_reference_
Base Value
toObject func(Value) *_object
baseObject *_object
}
func newPrimitiveReference(base Value, toObject func(Value) *_object, name string, strict bool) *_primitiveReference {
return &_primitiveReference{
Base: base,
toObject: toObject,
_reference_: _reference_{
name: name,
strict: strict,
},
}
}
func (self *_primitiveReference) baseAsObject() *_object {
if self.baseObject == nil {
self.baseObject = self.toObject(self.Base)
}
return self.baseObject
}
func (self *_primitiveReference) GetValue() Value {
return self.baseAsObject().get(self.name)
}
func (self *_primitiveReference) PutValue(value Value) bool {
self.baseAsObject().set(self.name, value, self.Strict())
return true
}