var protoclass = require("protoclass");
/**
*/
function Reference(view, path, settable, gettable) {
this.view = view;
this.path = path;
this.settable = settable !== false;
this.gettable = gettable !== false;
}
/**
*/
protoclass(Reference, {
/**
*/
__isReference: true,
/**
*/
value: function(value) {
if (!arguments.length) {
return this.gettable ? this.view.get(this.path) : void 0;
}
if (this.settable) this.view.set(this.path, value);
},
/**
*/
toString: function() {
return this.view.get(this.path);
}
});
module.exports = Reference;
|