1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 1 1 1 1 11 11 14 14 14 7 7 14 | (function(sc) { "use strict"; require("./codegen"); var CodeGen = sc.lang.compiler.CodeGen; CodeGen.addGenerateMethod("VariableDeclaration", function(node) { var scope = this.state.syncBlockScope; return this.stitchWith(node.declarations, ",", function(item) { this.scope.add("var", item.id.name, scope); var result = [ this.generate(item.id) ]; if (item.init) { result.push("=", this.generate(item.init)); } else { result.push("=$.Nil()"); } return result; }); }); })(sc); |