namespace all transformer keys with their type
This commit is contained in:
@@ -44,66 +44,65 @@ transform.moduleFormatters = {
|
||||
};
|
||||
|
||||
_.each({
|
||||
specNoForInOfAssignment: require("./transformers/spec/no-for-in-of-assignment"),
|
||||
specSetters: require("./transformers/spec/setters"),
|
||||
specBlockScopedFunctions: require("./transformers/spec/block-scoped-functions"),
|
||||
"spec.noForInOfAssignment": require("./transformers/spec/no-for-in-of-assignment"),
|
||||
"spec.setters": require("./transformers/spec/setters"),
|
||||
"spec.blockScopedFunctions": require("./transformers/spec/block-scoped-functions"),
|
||||
|
||||
malletOperator: require("./transformers/playground/mallet-operator"),
|
||||
methodBinding: require("./transformers/playground/method-binding"),
|
||||
memoizationOperator: require("./transformers/playground/memoization-operator"),
|
||||
objectGetterMemoization: require("./transformers/playground/object-getter-memoization"),
|
||||
"playground.malletOperator": require("./transformers/playground/mallet-operator"),
|
||||
"playground.methodBinding": require("./transformers/playground/method-binding"),
|
||||
"playground.memoizationOperator": require("./transformers/playground/memoization-operator"),
|
||||
"playground.objectGetterMemoization": require("./transformers/playground/object-getter-memoization"),
|
||||
|
||||
asyncToGenerator: require("./transformers/optional/async-to-generator"),
|
||||
bluebirdCoroutines: require("./transformers/optional/bluebird-coroutines"),
|
||||
"optional.asyncToGenerator": require("./transformers/optional/async-to-generator"),
|
||||
"optional.bluebirdCoroutines": require("./transformers/optional/bluebird-coroutines"),
|
||||
|
||||
react: require("./transformers/other/react"),
|
||||
modules: require("./transformers/es6/modules"),
|
||||
comprehensions: require("./transformers/es7/comprehensions"),
|
||||
arrowFunctions: require("./transformers/es6/arrow-functions"),
|
||||
classes: require("./transformers/es6/classes"),
|
||||
react: require("./transformers/other/react"),
|
||||
|
||||
objectSpread: require("./transformers/es7/object-spread"),
|
||||
exponentiationOperator: require("./transformers/es7/exponentiation-operator"),
|
||||
spread: require("./transformers/es6/spread"),
|
||||
templateLiterals: require("./transformers/es6/template-literals"),
|
||||
"es6.modules": require("./transformers/es6/modules"),
|
||||
"es7.comprehensions": require("./transformers/es7/comprehensions"),
|
||||
"es6.arrowFunctions": require("./transformers/es6/arrow-functions"),
|
||||
"es6.classes": require("./transformers/es6/classes"),
|
||||
|
||||
"properties.mutators": require("./transformers/es5/properties.mutators"),
|
||||
"properties.shorthand": require("./transformers/es6/properties.shorthand"),
|
||||
"properties.computed": require("./transformers/es6/properties.computed"),
|
||||
"es7.objectSpread": require("./transformers/es7/object-spread"),
|
||||
"es7.exponentiationOperator": require("./transformers/es7/exponentiation-operator"),
|
||||
"es6.spread": require("./transformers/es6/spread"),
|
||||
"es6.templateLiterals": require("./transformers/es6/template-literals"),
|
||||
|
||||
"parameters.default": require("./transformers/es6/parameters.default"),
|
||||
"parameters.rest": require("./transformers/es6/parameters.rest"),
|
||||
"es5.properties.mutators": require("./transformers/es5/properties.mutators"),
|
||||
"es6.properties.shorthand": require("./transformers/es6/properties.shorthand"),
|
||||
"es6.properties.computed": require("./transformers/es6/properties.computed"),
|
||||
|
||||
destructuring: require("./transformers/es6/destructuring"),
|
||||
forOf: require("./transformers/es6/for-of"),
|
||||
unicodeRegex: require("./transformers/es6/unicode-regex"),
|
||||
abstractReferences: require("./transformers/es7/abstract-references"),
|
||||
"es6.parameters.default": require("./transformers/es6/parameters.default"),
|
||||
"es6.parameters.rest": require("./transformers/es6/parameters.rest"),
|
||||
|
||||
constants: require("./transformers/es6/constants"),
|
||||
blockScoping: require("./transformers/es6/block-scoping"),
|
||||
blockScopingTDZ: require("./transformers/optional/block-scoping-tdz"),
|
||||
"es6.destructuring": require("./transformers/es6/destructuring"),
|
||||
"es6.forOf": require("./transformers/es6/for-of"),
|
||||
"es6.unicodeRegex": require("./transformers/es6/unicode-regex"),
|
||||
"es7.abstractReferences": require("./transformers/es7/abstract-references"),
|
||||
|
||||
_blockHoist: require("./transformers/_block-hoist"),
|
||||
"es6.constants": require("./transformers/es6/constants"),
|
||||
"es6.blockScoping": require("./transformers/es6/block-scoping"),
|
||||
"optional.blockScopingTDZ": require("./transformers/optional/block-scoping-tdz"),
|
||||
|
||||
generators: require("./transformers/es6/generators"),
|
||||
_blockHoist: require("./transformers/_block-hoist"),
|
||||
|
||||
protoToAssign: require("./transformers/optional/proto-to-assign"),
|
||||
"es6.generators": require("./transformers/es6/generators"),
|
||||
"optional.protoToAssign": require("./transformers/optional/proto-to-assign"),
|
||||
|
||||
_declarations: require("./transformers/_declarations"),
|
||||
_declarations: require("./transformers/_declarations"),
|
||||
|
||||
// wrap up
|
||||
useStrict: require("./transformers/other/use-strict"),
|
||||
_aliasFunctions: require("./transformers/_alias-functions"),
|
||||
_moduleFormatter: require("./transformers/_module-formatter"),
|
||||
useStrict: require("./transformers/other/use-strict"),
|
||||
|
||||
typeofSymbol: require("./transformers/optional/typeof-symbol"),
|
||||
selfContained: require("./transformers/optional/self-contained"),
|
||||
undefinedToVoid: require("./transformers/optional/undefined-to-void"),
|
||||
undeclaredVariableCheck: require("./transformers/optional/undeclared-variable-check"),
|
||||
_aliasFunctions: require("./transformers/_alias-functions"),
|
||||
_moduleFormatter: require("./transformers/_module-formatter"),
|
||||
|
||||
// spec
|
||||
specPropertyLiterals: require("./transformers/spec/property-literals"),
|
||||
specMemberExpressionLiterals: require("./transformers/spec/member-expression-literals")
|
||||
"optional.typeofSymbol": require("./transformers/optional/typeof-symbol"),
|
||||
"optional.selfContained": require("./transformers/optional/self-contained"),
|
||||
"optional.undefinedToVoid": require("./transformers/optional/undefined-to-void"),
|
||||
"optional.undeclaredVariableCheck": require("./transformers/optional/undeclared-variable-check"),
|
||||
|
||||
"spec.propertyLiterals": require("./transformers/spec/property-literals"),
|
||||
"spec.memberExpressionLiterals": require("./transformers/spec/member-expression-literals")
|
||||
}, function (transformer, key) {
|
||||
transform.transformers[key] = new Transformer(key, transformer);
|
||||
});
|
||||
|
||||
@@ -4,7 +4,7 @@ var transform = require("../transform");
|
||||
|
||||
exports.ast = {
|
||||
exit: function (ast, file) {
|
||||
if (!transform.transformers.modules.canRun(file)) return;
|
||||
if (!transform.transformers["es6.modules"].canRun(file)) return;
|
||||
|
||||
if (file.moduleFormatter.transform) {
|
||||
file.moduleFormatter.transform(ast);
|
||||
|
||||
@@ -48,7 +48,7 @@ function Class(node, file, scope, isStatement) {
|
||||
this.hasConstructor = false;
|
||||
this.className = node.id || file.generateUidIdentifier("class", scope);
|
||||
this.superName = node.superClass;
|
||||
this.isLoose = file.isLoose("classes");
|
||||
this.isLoose = file.isLoose("es6.classes");
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -5,7 +5,7 @@ var t = require("../../../types");
|
||||
|
||||
exports.ForOfStatement = function (node, parent, scope, context, file) {
|
||||
var callback = spec;
|
||||
if (file.isLoose("forOf")) callback = loose;
|
||||
if (file.isLoose("es6.forOf")) callback = loose;
|
||||
|
||||
var build = callback(node, parent, scope, context, file);
|
||||
var declar = build.declar;
|
||||
|
||||
@@ -24,7 +24,7 @@ exports.ObjectExpression = function (node, parent, scope, context, file) {
|
||||
//
|
||||
|
||||
var callback = spec;
|
||||
if (file.isLoose("properties.computed")) callback = loose;
|
||||
if (file.isLoose("es6.properties.computed")) callback = loose;
|
||||
|
||||
var result = callback(node, body, objId, initProps, file);
|
||||
if (result) return result;
|
||||
|
||||
@@ -23,7 +23,7 @@ exports.TaggedTemplateExpression = function (node, parent, scope, context, file)
|
||||
raw = t.arrayExpression(raw);
|
||||
|
||||
var templateName = "tagged-template-literal";
|
||||
if (file.isLoose("templateLiterals")) templateName += "-loose";
|
||||
if (file.isLoose("es6.templateLiterals")) templateName += "-loose";
|
||||
args.push(t.callExpression(file.addHelper(templateName), [strings, raw]));
|
||||
|
||||
args = args.concat(quasi.expressions);
|
||||
|
||||
@@ -5,7 +5,7 @@ var t = require("../../../types");
|
||||
|
||||
exports.manipulateOptions = function (opts) {
|
||||
opts.experimental = true;
|
||||
opts.blacklist.push("generators");
|
||||
opts.blacklist.push("es6.generators");
|
||||
};
|
||||
|
||||
exports.optional = true;
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"args": ["--whitelist", "arrowFunctions"]
|
||||
"args": ["--whitelist", "es6.arrowFunctions"]
|
||||
}
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"blacklist": ["arrowFunctions"]
|
||||
"blacklist": ["es6.arrowFunctions"]
|
||||
}
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"whitelist": ["arrowFunctions"]
|
||||
"whitelist": ["es6.arrowFunctions"]
|
||||
}
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"loose": ["classes"]
|
||||
"loose": ["es6.classes"]
|
||||
}
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"loose": ["forOf"]
|
||||
"loose": ["es6.forOf"]
|
||||
}
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"loose": ["properties.computed"]
|
||||
"loose": ["es6.properties.computed"]
|
||||
}
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"loose": ["templateLiterals"]
|
||||
"loose": ["es6.templateLiterals"]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user