Sha256: 1436d3efbacaa5924381a59699b9a211ab45f2597b82927915d5783aff34ae93
Contents?: true
Size: 1.28 KB
Versions: 62
Compression:
Stored size: 1.28 KB
Contents
/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ var DependenciesBlockVariable = require("./DependenciesBlockVariable"); function DependenciesBlock() { this.dependencies = []; this.blocks = []; this.variables = []; } module.exports = DependenciesBlock; DependenciesBlock.prototype.addBlock = function(block) { this.blocks.push(block); block.parent = this; }; DependenciesBlock.prototype.addVariable = function(name, expression, dependencies) { for(var i = 0; i < this.variables.length; i++) { var v = this.variables[i]; if(v.name === name && v.expression === expression) return; } this.variables.push(new DependenciesBlockVariable(name, expression, dependencies)); }; DependenciesBlock.prototype.addDependency = function(dependency) { this.dependencies.push(dependency); }; DependenciesBlock.prototype.updateHash = function(hash) { this.dependencies.forEach(function(d) { d.updateHash(hash); }); this.blocks.forEach(function(b) { b.updateHash(hash); }); this.variables.forEach(function(v) { v.updateHash(hash); }); }; DependenciesBlock.prototype.disconnect = function() { function disconnect(i) { i.disconnect(); } this.dependencies.forEach(disconnect); this.blocks.forEach(disconnect); this.variables.forEach(disconnect); };
Version data entries
62 entries across 62 versions & 1 rubygems