UNPKG

jade

Version:

Jade template engine

55 lines (45 loc) 961 B
/*! * Stylus - If * Copyright(c) 2010 LearnBoost <dev@learnboost.com> * MIT Licensed */ /** * Module dependencies. */ var Node = require('./node'); /** * Initialize a new `If` with the given `cond`. * * @param {Expression} cond * @param {Boolean|Block} negate, block * @api public */ var If = module.exports = function If(cond, negate){ Node.call(this); this.cond = cond; this.elses = []; if (negate instanceof Node) { this.block = negate; } else { this.negate = negate; } }; /** * Inherit from `Node.prototype`. */ If.prototype.__proto__ = Node.prototype; /** * Return a clone of this node. * * @return {Node} * @api public */ If.prototype.clone = function(){ var cond = this.cond.clone() , block = this.block.clone(); var clone = new If(cond, block); clone.elses = this.elses.map(function(node){ return node.clone(); }); clone.negate = this.negate; clone.lineno = this.lineno; return clone; };