Current File : //home/tradevaly/www/node_modules/restructure/src/Optional.js |
// Generated by CoffeeScript 1.7.1
(function() {
var Optional;
Optional = (function() {
function Optional(type, condition) {
this.type = type;
this.condition = condition != null ? condition : true;
}
Optional.prototype.decode = function(stream, parent) {
var condition;
condition = this.condition;
if (typeof condition === 'function') {
condition = condition.call(parent, parent);
}
if (condition) {
return this.type.decode(stream, parent);
}
};
Optional.prototype.size = function(val, parent) {
var condition;
condition = this.condition;
if (typeof condition === 'function') {
condition = condition.call(parent, parent);
}
if (condition) {
return this.type.size(val, parent);
} else {
return 0;
}
};
Optional.prototype.encode = function(stream, val, parent) {
var condition;
condition = this.condition;
if (typeof condition === 'function') {
condition = condition.call(parent, parent);
}
if (condition) {
return this.type.encode(stream, val, parent);
}
};
return Optional;
})();
module.exports = Optional;
}).call(this);