80 lines
1.2 KiB
JavaScript
80 lines
1.2 KiB
JavaScript
|
|
var VnObject = require('./object');
|
|
var Type = require('./type');
|
|
var ParamIface = require('./param-iface');
|
|
var LotIface = require('./lot-iface');
|
|
|
|
/**
|
|
* A simple implementation of @ParamIface.
|
|
*/
|
|
module.exports = new Class({
|
|
Extends: VnObject
|
|
,Implements: ParamIface
|
|
,Tag: 'vn-param'
|
|
,Properties: {
|
|
value: {
|
|
type: null
|
|
,set: function(x) {
|
|
this._setValue(x);
|
|
}
|
|
,get: function() {
|
|
return this._value;
|
|
}
|
|
},
|
|
type: {
|
|
type: Type
|
|
,set: function(x) {
|
|
this._setType(x);
|
|
}
|
|
,get: function() {
|
|
return this._type;
|
|
}
|
|
},
|
|
param: {
|
|
type: ParamIface
|
|
,set: function(x) {
|
|
this._setParam(x);
|
|
}
|
|
,get: function() {
|
|
return this._param;
|
|
}
|
|
},
|
|
master: {
|
|
type: ParamIface
|
|
,set: function(x) {
|
|
this._setParam(x);
|
|
}
|
|
,get: function() {
|
|
return this._param;
|
|
}
|
|
},
|
|
lot: {
|
|
type: LotIface
|
|
,set: function(x) {
|
|
this._setLot(x);
|
|
}
|
|
,get: function() {
|
|
return this._lot;
|
|
}
|
|
},
|
|
name: {
|
|
type: String
|
|
,set: function(x) {
|
|
this._setName(x);
|
|
}
|
|
,get: function() {
|
|
return this._name;
|
|
}
|
|
},
|
|
oneWay: {
|
|
type: Boolean
|
|
,set: function(x) {
|
|
this._oneWay = x;
|
|
}
|
|
,get: function() {
|
|
return this._oneWay;
|
|
}
|
|
}
|
|
}
|
|
});
|