var Node = require("./node"); var Value = function (value) { this.value = value; if (!value) { throw new Error("Value requires an array argument"); } }; Value.prototype = new Node(); Value.prototype.type = "Value"; Value.prototype.accept = function (visitor) { if (this.value) { this.value = visitor.visitArray(this.value); } }; Value.prototype.eval = function (context) { if (this.value.length === 1) { return this.value[0].eval(context); } else { return new Value(this.value.map(function (v) { return v.eval(context); })); } }; Value.prototype.genCSS = function (context, output) { var i; for(i = 0; i < this.value.length; i++) { this.value[i].genCSS(context, output); if (i+1 < this.value.length) { output.add((context && context.compress) ? ',' : ', '); } } }; module.exports = Value;