Merge branch 'master' of github.com:6to5/6to5

This commit is contained in:
Sebastian McKenzie 2015-02-11 08:29:08 +11:00
commit c38edbbb42
13 changed files with 37 additions and 40 deletions

View File

@ -1,5 +1,5 @@
var t = require("../types");
var _ = require("lodash");
var includes = require("lodash/collection/includes");
exports.AssignmentExpression = function (node, parent, detected) {
if (node.operator === "**=") {
@ -38,7 +38,7 @@ exports.Property = function (node, parent, detected) {
};
exports.AssignmentPattern = function (node, parent, detected) {
if (t.isFunction(parent) && _.contains(parent.params, node)) {
if (t.isFunction(parent) && includes(parent.params, node)) {
detected("es6.parameters.default");
}
};

View File

@ -3,7 +3,7 @@
module.exports = Buffer;
var isBoolean = require("lodash/lang/isBoolean");
var contains = require("lodash/collection/contains");
var includes = require("lodash/collection/includes");
var isNumber = require("lodash/lang/isNumber");
var util = require("../util");
@ -159,7 +159,7 @@ Buffer.prototype.isLast = function (cha, trimRight) {
var last = buf[buf.length - 1];
if (Array.isArray(cha)) {
return contains(cha, last);
return includes(cha, last);
} else {
return cha === last;
}

View File

@ -8,7 +8,7 @@ var isFunction = require("lodash/lang/isFunction");
var transform = require("./index");
var generate = require("../generation");
var defaults = require("lodash/object/defaults");
var contains = require("lodash/collection/contains");
var includes = require("lodash/collection/includes");
var clone = require("../helpers/clone");
var parse = require("../helpers/parse");
var Scope = require("../traversal/scope");
@ -135,7 +135,7 @@ File.prototype.normalizeOptions = function (opts) {
opts.optional = util.arrayify(opts.optional);
opts.loose = util.arrayify(opts.loose);
if (contains(opts.loose, "all")) {
if (includes(opts.loose, "all")) {
opts.loose = Object.keys(transform.transformers);
}
@ -179,7 +179,7 @@ File.prototype.normalizeOptions = function (opts) {
};
File.prototype.isLoose = function (key) {
return contains(this.opts.loose, key);
return includes(this.opts.loose, key);
};
File.prototype.buildTransformers = function () {
@ -302,7 +302,7 @@ File.prototype.isConsequenceExpressionStatement = function (node) {
};
File.prototype.addHelper = function (name) {
if (!contains(File.helpers, name)) {
if (!includes(File.helpers, name)) {
throw new ReferenceError("Unknown helper " + name);
}

View File

@ -6,7 +6,7 @@ var DefaultFormatter = require("./_default");
var CommonFormatter = require("./common");
var util = require("../../util");
var t = require("../../types");
var contains = require("lodash/collection/contains");
var includes = require("lodash/collection/includes");
var values = require("lodash/object/values");
function AMDFormatter() {
@ -81,7 +81,7 @@ AMDFormatter.prototype.importSpecifier = function (specifier, node, nodes) {
var key = t.getSpecifierName(specifier);
var ref = this.getExternalReference(node);
if (contains(this.file.dynamicImported, node)) {
if (includes(this.file.dynamicImported, node)) {
// Prevent unnecessary renaming of dynamic imports.
this.ids[node.source.value] = ref;
} else if (t.isImportBatchSpecifier(specifier)) {

View File

@ -3,7 +3,7 @@
module.exports = CommonJSFormatter;
var DefaultFormatter = require("./_default");
var contains = require("lodash/collection/contains");
var includes = require("lodash/collection/includes");
var util = require("../../util");
var t = require("../../types");
@ -31,7 +31,7 @@ CommonJSFormatter.prototype.importSpecifier = function (specifier, node, nodes)
// import foo from "foo";
if (t.isSpecifierDefault(specifier)) {
if (!contains(this.file.dynamicImported, node)) {
if (!includes(this.file.dynamicImported, node)) {
if (this.noInteropRequireImport) {
ref = t.memberExpression(ref, t.identifier("default"));
} else {

View File

@ -1,6 +1,6 @@
module.exports = TransformerPass;
var contains = require("lodash/collection/contains");
var includes = require("lodash/collection/includes");
/**
* This class is responsible for traversing over the provided `File`s
@ -25,14 +25,14 @@ TransformerPass.prototype.canRun = function () {
// blacklist
var blacklist = opts.blacklist;
if (blacklist.length && contains(blacklist, key)) return false;
if (blacklist.length && includes(blacklist, key)) return false;
// whitelist
var whitelist = opts.whitelist;
if (whitelist.length) return contains(whitelist, key);
if (whitelist.length) return includes(whitelist, key);
// optional
if (transformer.optional && !contains(opts.optional, key)) return false;
if (transformer.optional && !includes(opts.optional, key)) return false;
// experimental
if (transformer.experimental && !opts.experimental) return false;

View File

@ -1,6 +1,6 @@
"use strict";
var contains = require("lodash/collection/contains");
var includes = require("lodash/collection/includes");
var t = require("../../../types");
exports.check = t.isSpreadElement;
@ -103,7 +103,7 @@ exports.NewExpression = function (node, parent, scope, file) {
var args = node.arguments;
if (!hasSpread(args)) return;
var nativeType = t.isIdentifier(node.callee) && contains(t.NATIVE_TYPE_NAMES, node.callee.name);
var nativeType = t.isIdentifier(node.callee) && includes(t.NATIVE_TYPE_NAMES, node.callee.name);
var nodes = build(args, file);

View File

@ -2,7 +2,9 @@
var util = require("../../../util");
var t = require("../../../types");
var _ = require("lodash");
var map = require("lodash/collection/map");
var flatten = require("lodash/array/flatten");
var reduceRight = require("lodash/collection/reduceRight");
function returnBlock(expr) {
return t.blockStatement([t.returnStatement(expr)]);
@ -83,16 +85,13 @@ TailCallTransformer.prototype.run = function () {
var body = t.ensureBlock(node).body;
if (this.vars.length > 0) {
body.unshift(t.expressionStatement(
_(this.vars)
.map(function (decl) {
return decl.declarations;
})
.flatten()
.reduceRight(function (expr, decl) {
return t.assignmentExpression("=", decl.id, expr);
}, t.identifier("undefined"))
));
var declarations = flatten(map(this.vars, function (decl) {
return decl.declarations;
}, this));
var statement = reduceRight(declarations, function (expr, decl) {
return t.assignmentExpression("=", decl.id, expr);
}, t.identifier("undefined"));
body.unshift(t.expressionStatement(statement));
}
var paramDecls = this.paramDecls;
@ -332,7 +331,7 @@ var thirdPass = {
if (!state.needsThis && expr.left === state.getThisId()) {
this.remove();
} else if (!state.needsArguments && expr.left === state.getArgumentsId() && t.isArrayExpression(expr.right)) {
return _.map(expr.right.elements, function (elem) {
return map(expr.right.elements, function (elem) {
return t.expressionStatement(elem);
});
}

View File

@ -4,7 +4,7 @@ var util = require("../../../util");
var core = require("core-js/library");
var t = require("../../../types");
var has = require("lodash/object/has");
var contains = require("lodash/collection/contains");
var includes = require("lodash/collection/includes");
var coreHas = function (node) {
return node.name !== "_" && has(core, node.name);
@ -34,7 +34,7 @@ var astVisitor = {
this.skip();
return t.prependToMemberExpression(node, file.get("coreIdentifier"));
}
} else if (t.isReferencedIdentifier(node, parent) && !t.isMemberExpression(parent) && contains(ALIASABLE_CONSTRUCTORS, node.name) && !scope.getBindingIdentifier(node.name)) {
} else if (t.isReferencedIdentifier(node, parent) && !t.isMemberExpression(parent) && includes(ALIASABLE_CONSTRUCTORS, node.name) && !scope.getBindingIdentifier(node.name)) {
// Symbol() -> _core.Symbol(); new Promise -> new _core.Promise
return t.memberExpression(file.get("coreIdentifier"), node);
} else if (t.isCallExpression(node)) {

View File

@ -3,7 +3,7 @@
module.exports = traverse;
var TraversalContext = require("./context");
var contains = require("lodash/collection/contains");
var includes = require("lodash/collection/includes");
var t = require("../types");
function traverse(parent, opts, scope, state) {
@ -102,7 +102,7 @@ function hasBlacklistedType(node, parent, scope, state) {
traverse.hasType = function (tree, scope, type, blacklistTypes) {
// the node we're searching in is blacklisted
if (contains(blacklistTypes, tree.type)) return false;
if (includes(blacklistTypes, tree.type)) return false;
// the type we're looking for is the same as the passed node
if (tree.type === type) return true;

View File

@ -5,7 +5,7 @@ module.exports = TraversalPath;
/* jshint maxparams:7 */
var traverse = require("./index");
var contains = require("lodash/collection/contains");
var includes = require("lodash/collection/includes");
var Scope = require("./scope");
var t = require("../types");
@ -96,7 +96,7 @@ TraversalPath.prototype.replaceNode = function (replacement) {
// we're replacing a statement or block node with an array of statements so we better
// ensure that it's a block
if (isArray) {
if (contains(t.STATEMENT_OR_BLOCK_KEYS, this.key) && !t.isBlockStatement(this.obj)) {
if (includes(t.STATEMENT_OR_BLOCK_KEYS, this.key) && !t.isBlockStatement(this.obj)) {
t.ensureBlock(this.obj, this.key);
}

View File

@ -2,7 +2,7 @@
module.exports = Scope;
var contains = require("lodash/collection/contains");
var includes = require("lodash/collection/includes");
var traverse = require("./index");
var defaults = require("lodash/object/defaults");
var globals = require("globals");
@ -317,7 +317,6 @@ var blockVariableVisitor = {
};
Scope.prototype.crawl = function () {
var parent = this.parent;
var block = this.block;
var i;
@ -520,7 +519,7 @@ Scope.prototype.hasBinding = function (name) {
if (!name) return false;
if (this.hasOwnBinding(name)) return true;
if (this.parentHasBinding(name)) return true;
if (contains(Scope.defaultDeclarations, name)) return true;
if (includes(Scope.defaultDeclarations, name)) return true;
return false;
};

View File

@ -1,7 +1,6 @@
"use strict";
var toFastProperties = require("../helpers/to-fast-properties");
var defaults = require("lodash/object/defaults");
var isString = require("lodash/lang/isString");
var compact = require("lodash/array/compact");
var esutils = require("esutils");