From 150e55aa009e3af02f585e921213bfcff9999427 Mon Sep 17 00:00:00 2001 From: Blake Embrey Date: Sat, 28 Dec 2013 22:31:45 -0500 Subject: [PATCH] Pull options out from param setup to allow easier extension. --- lib/handlebars/compiler/javascript-compiler.js | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lib/handlebars/compiler/javascript-compiler.js b/lib/handlebars/compiler/javascript-compiler.js index 159a38bfc..607b03013 100644 --- a/lib/handlebars/compiler/javascript-compiler.js +++ b/lib/handlebars/compiler/javascript-compiler.js @@ -798,9 +798,7 @@ JavaScriptCompiler.prototype = { }; }, - // the params and contexts arguments are passed in arrays - // to fill in - setupParams: function(paramSize, params, useRegister) { + setupOptions: function(paramSize, params) { var options = [], contexts = [], types = [], param, inverse, program; options.push("hash:" + this.popStack()); @@ -846,14 +844,21 @@ JavaScriptCompiler.prototype = { options.push("data:data"); } - options = "{" + options.join(",") + "}"; + return options; + }, + + // the params and contexts arguments are passed in arrays + // to fill in + setupParams: function(paramSize, params, useRegister) { + var options = '{' + this.setupOptions(paramSize, params).join(',') + '}'; + if (useRegister) { this.register('options', options); params.push('options'); } else { params.push(options); } - return params.join(", "); + return params.join(', '); } };