Allow subclasses to customize the namespace

This commit is contained in:
Yehuda Katz
2011-10-28 17:39:42 -07:00
parent 924cc3e86c
commit 9998d9d9bc
+7 -4
View File
@@ -336,6 +336,8 @@ Handlebars.JavaScriptCompiler = function() {};
initializeBuffer: function() {
return this.quotedString("");
},
namespace: "Handlebars",
// END PUBLIC API
compile: function(environment, options, context, asObject) {
@@ -406,8 +408,9 @@ Handlebars.JavaScriptCompiler = function() {};
var out = [];
if (!this.isChild) {
var copies = "helpers = helpers || Handlebars.helpers;";
if(this.environment.usePartial) { copies = copies + " partials = partials || Handlebars.partials;"; }
var namespace = this.namespace;
var copies = "helpers = helpers || " + namespace + ".helpers;";
if(this.environment.usePartial) { copies = copies + " partials = partials || " + namespace + ".partials;"; }
out.push(copies);
} else {
out.push('');
@@ -521,7 +524,7 @@ Handlebars.JavaScriptCompiler = function() {};
+ " || "
+ this.nameLookup('depth' + this.lastContext, name, 'context');
}
toPush += ';';
this.source.push(toPush);
} else {
@@ -726,7 +729,7 @@ Handlebars.JavaScriptCompiler = function() {};
};
var reservedWords = ("break case catch continue default delete do else finally " +
"for function if in instanceof new return switch this throw " +
"for function if in instanceof new return switch this throw " +
"try typeof var void while with null true false").split(" ");
var compilerWords = JavaScriptCompiler.RESERVED_WORDS = {};