babel-source 5.6.4 → 5.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/lib/babel.js +75 -48
- data/lib/babel/source.rb +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
N2MyMDM2NmZiNjMxYzM3MDE4Yzc4ZDE1ZTY0M2M5ZTA5ZDI5Nzc4Mw==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
OWY1OTI1Y2RmOThkMTliYjlhYjk5MWQ2MDU0NmRmNWZjMmZlYzRkYQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MjlhZjFkYjJjNDY0NTgyMDdlM2IxODg1YWNjZTQxODUyMDMyNDhlMGQ2MzY2
|
10
|
+
ODRhYmMxMTczYTNmZGRjOGFkMDE5YWIwZmM3YjllYjQ1NGMzYzU4NmQ0NmEy
|
11
|
+
OTM5ZDczNDFmM2FlODljMmE5Nzg0OGY3NGFhYjhhODEyNGQyNmE=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZmIwZGZhMjQyZmIyZWIxNGFlZDUwMzdmM2FjM2NkZjI2ZWNlMGVjNjUyNTNk
|
14
|
+
YzIyMDU5NzcxZTQxMmQ5MmVmZWMzZTAxNmNiNDAyNDk5ZTAxZmQ2ZTkzZTJj
|
15
|
+
MTMxNzcyOWRkZGE3NjJkOTljNmVhYjAzOGE0ZjdlM2RjNmVlZDA=
|
data/lib/babel.js
CHANGED
@@ -5940,13 +5940,13 @@ function ForStatement(node, print) {
|
|
5940
5940
|
this.push(";");
|
5941
5941
|
|
5942
5942
|
if (node.test) {
|
5943
|
-
this.
|
5943
|
+
this.space();
|
5944
5944
|
print.plain(node.test);
|
5945
5945
|
}
|
5946
5946
|
this.push(";");
|
5947
5947
|
|
5948
5948
|
if (node.update) {
|
5949
|
-
this.
|
5949
|
+
this.space();
|
5950
5950
|
print.plain(node.update);
|
5951
5951
|
}
|
5952
5952
|
|
@@ -15120,9 +15120,10 @@ var memberExpressionOptimisationVisitor = {
|
|
15120
15120
|
Function: function Function(node, parent, scope, state) {
|
15121
15121
|
// skip over functions as whatever `arguments` we reference inside will refer
|
15122
15122
|
// to the wrong function
|
15123
|
+
var oldNoOptimise = state.noOptimise;
|
15123
15124
|
state.noOptimise = true;
|
15124
15125
|
this.traverse(memberExpressionOptimisationVisitor, state);
|
15125
|
-
state.noOptimise =
|
15126
|
+
state.noOptimise = oldNoOptimise;
|
15126
15127
|
this.skip();
|
15127
15128
|
},
|
15128
15129
|
|
@@ -15135,7 +15136,9 @@ var memberExpressionOptimisationVisitor = {
|
|
15135
15136
|
// is this a referenced identifier and is it referencing the rest parameter?
|
15136
15137
|
if (node.name !== state.name) return;
|
15137
15138
|
|
15138
|
-
if (
|
15139
|
+
if (state.noOptimise) {
|
15140
|
+
state.deopted = true;
|
15141
|
+
} else {
|
15139
15142
|
if (this.parentPath.isMemberExpression({ computed: true, object: node })) {
|
15140
15143
|
// if we know that this member expression is referencing a number then we can safely
|
15141
15144
|
// optimise it
|
@@ -15154,11 +15157,7 @@ var memberExpressionOptimisationVisitor = {
|
|
15154
15157
|
return;
|
15155
15158
|
}
|
15156
15159
|
}
|
15157
|
-
}
|
15158
15160
|
|
15159
|
-
if (state.noOptimise) {
|
15160
|
-
state.deopted = true;
|
15161
|
-
} else {
|
15162
15161
|
state.references.push(this);
|
15163
15162
|
}
|
15164
15163
|
}
|
@@ -19209,6 +19208,7 @@ exports.__esModule = true;
|
|
19209
19208
|
exports.getTypeAnnotation = getTypeAnnotation;
|
19210
19209
|
exports._getTypeAnnotation = _getTypeAnnotation;
|
19211
19210
|
exports.isBaseType = isBaseType;
|
19211
|
+
exports.couldBeBaseType = couldBeBaseType;
|
19212
19212
|
exports.isGenericType = isGenericType;
|
19213
19213
|
|
19214
19214
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj["default"] = obj; return newObj; } }
|
@@ -19281,9 +19281,11 @@ function _getTypeAnnotation() {
|
|
19281
19281
|
* Description
|
19282
19282
|
*/
|
19283
19283
|
|
19284
|
-
function isBaseType(baseName) {
|
19285
|
-
|
19284
|
+
function isBaseType(baseName, soft) {
|
19285
|
+
return _isBaseType(baseName, this.getTypeAnnotation(), soft);
|
19286
|
+
}
|
19286
19287
|
|
19288
|
+
function _isBaseType(baseName, type, soft) {
|
19287
19289
|
if (baseName === "string") {
|
19288
19290
|
return t.isStringTypeAnnotation(type);
|
19289
19291
|
} else if (baseName === "number") {
|
@@ -19295,7 +19297,34 @@ function isBaseType(baseName) {
|
|
19295
19297
|
} else if (baseName === "mixed") {
|
19296
19298
|
return t.isMixedTypeAnnotation(type);
|
19297
19299
|
} else {
|
19298
|
-
|
19300
|
+
if (soft) {
|
19301
|
+
return false;
|
19302
|
+
} else {
|
19303
|
+
throw new Error("Unknown base type " + baseName);
|
19304
|
+
}
|
19305
|
+
}
|
19306
|
+
}
|
19307
|
+
|
19308
|
+
/**
|
19309
|
+
* Description
|
19310
|
+
*/
|
19311
|
+
|
19312
|
+
function couldBeBaseType(name) {
|
19313
|
+
var type = this.getTypeAnnotation();
|
19314
|
+
if (t.isAnyTypeAnnotation(type)) return true;
|
19315
|
+
|
19316
|
+
if (t.isUnionTypeAnnotation(type)) {
|
19317
|
+
var _arr = type.types;
|
19318
|
+
|
19319
|
+
for (var _i = 0; _i < _arr.length; _i++) {
|
19320
|
+
var type2 = _arr[_i];
|
19321
|
+
if (t.isAnyTypeAnnotation(type2) || _isBaseType(name, type2, true)) {
|
19322
|
+
return true;
|
19323
|
+
}
|
19324
|
+
}
|
19325
|
+
return false;
|
19326
|
+
} else {
|
19327
|
+
return _isBaseType(name, type, true);
|
19299
19328
|
}
|
19300
19329
|
}
|
19301
19330
|
|
@@ -23654,7 +23683,7 @@ function isReferenced(node, parent) {
|
|
23654
23683
|
switch (parent.type) {
|
23655
23684
|
// yes: PARENT[NODE]
|
23656
23685
|
// yes: NODE.child
|
23657
|
-
// no: parent.
|
23686
|
+
// no: parent.NODE
|
23658
23687
|
case "MemberExpression":
|
23659
23688
|
case "JSXMemberExpression":
|
23660
23689
|
if (parent.property === node && parent.computed) {
|
@@ -23707,21 +23736,17 @@ function isReferenced(node, parent) {
|
|
23707
23736
|
return parent.local === node;
|
23708
23737
|
}
|
23709
23738
|
|
23710
|
-
// no: import NODE from "foo";
|
23711
|
-
case "ImportDefaultSpecifier":
|
23712
|
-
return false;
|
23713
|
-
|
23714
|
-
// no: import * as NODE from "foo";
|
23715
|
-
case "ImportNamespaceSpecifier":
|
23716
|
-
return false;
|
23717
|
-
|
23718
23739
|
// no: <div NODE="foo" />
|
23719
23740
|
case "JSXAttribute":
|
23720
23741
|
return parent.name !== node;
|
23721
23742
|
|
23743
|
+
// no: import NODE from "foo";
|
23744
|
+
// no: import * as NODE from "foo";
|
23722
23745
|
// no: import { NODE as foo } from "foo";
|
23723
23746
|
// no: import { foo as NODE } from "foo";
|
23724
23747
|
// no: import NODE from "bar";
|
23748
|
+
case "ImportDefaultSpecifier":
|
23749
|
+
case "ImportNamespaceSpecifier":
|
23725
23750
|
case "ImportSpecifier":
|
23726
23751
|
return false;
|
23727
23752
|
|
@@ -23746,12 +23771,16 @@ function isReferenced(node, parent) {
|
|
23746
23771
|
case "RestElement":
|
23747
23772
|
return false;
|
23748
23773
|
|
23749
|
-
//
|
23750
|
-
//
|
23774
|
+
// yes: left = NODE;
|
23775
|
+
// no: NODE = right;
|
23751
23776
|
case "AssignmentExpression":
|
23752
|
-
case "AssignmentPattern":
|
23753
23777
|
return parent.right === node;
|
23754
23778
|
|
23779
|
+
// no: [NODE = foo] = [];
|
23780
|
+
// no: [foo = NODE] = [];
|
23781
|
+
case "AssignmentPattern":
|
23782
|
+
return false;
|
23783
|
+
|
23755
23784
|
// no: [NODE] = [];
|
23756
23785
|
// no: ({ NODE }) = [];
|
23757
23786
|
case "ObjectPattern":
|
@@ -23828,7 +23857,7 @@ function isImmutable(node) {
|
|
23828
23857
|
|
23829
23858
|
if (t.isLiteral(node)) {
|
23830
23859
|
if (node.regex) {
|
23831
|
-
//
|
23860
|
+
// regexs are mutable
|
23832
23861
|
return false;
|
23833
23862
|
} else {
|
23834
23863
|
// immutable!
|
@@ -48758,7 +48787,8 @@ exports.isReference = function(path, name) {
|
|
48758
48787
|
return false;
|
48759
48788
|
}
|
48760
48789
|
|
48761
|
-
if (
|
48790
|
+
if (path.parentPath.name === "params" &&
|
48791
|
+
parent.params === path.parentPath.value &&
|
48762
48792
|
parent.params[path.name] === node) {
|
48763
48793
|
return false;
|
48764
48794
|
}
|
@@ -48809,7 +48839,8 @@ var isObject = types.builtInTypes.object;
|
|
48809
48839
|
var NodePath = types.NodePath;
|
48810
48840
|
var hoist = require("./hoist").hoist;
|
48811
48841
|
var Emitter = require("./emit").Emitter;
|
48812
|
-
var
|
48842
|
+
var util = require("./util");
|
48843
|
+
var runtimeProperty = util.runtimeProperty;
|
48813
48844
|
var getMarkInfo = require("private").makeAccessor();
|
48814
48845
|
|
48815
48846
|
exports.transform = function transform(node, options) {
|
@@ -48901,10 +48932,13 @@ var visitor = types.PathVisitor.fromMethodsObject({
|
|
48901
48932
|
var innerFnId = b.identifier(node.id.name + "$");
|
48902
48933
|
var contextId = path.scope.declareTemporary("context$");
|
48903
48934
|
var argsId = path.scope.declareTemporary("args$");
|
48904
|
-
|
48935
|
+
|
48936
|
+
// Turn all declarations into vars, and replace the original
|
48937
|
+
// declarations with equivalent assignment expressions.
|
48905
48938
|
var vars = hoist(path);
|
48906
48939
|
|
48907
|
-
|
48940
|
+
var didRenameArguments = renameArguments(path, argsId);
|
48941
|
+
if (didRenameArguments) {
|
48908
48942
|
vars = vars || b.variableDeclaration("var", []);
|
48909
48943
|
vars.declarations.push(b.variableDeclarator(
|
48910
48944
|
argsId, b.identifier("arguments")
|
@@ -49123,13 +49157,11 @@ function shouldNotHoistAbove(stmtPath) {
|
|
49123
49157
|
function renameArguments(funcPath, argsId) {
|
49124
49158
|
assert.ok(funcPath instanceof types.NodePath);
|
49125
49159
|
var func = funcPath.value;
|
49126
|
-
var
|
49127
|
-
var hasImplicitArguments = false;
|
49160
|
+
var didRenameArguments = false;
|
49128
49161
|
|
49129
49162
|
recast.visit(funcPath, {
|
49130
49163
|
visitFunction: function(path) {
|
49131
49164
|
if (path.value === func) {
|
49132
|
-
hasImplicitArguments = !path.scope.lookup("arguments");
|
49133
49165
|
this.traverse(path);
|
49134
49166
|
} else {
|
49135
49167
|
return false;
|
@@ -49137,27 +49169,22 @@ function renameArguments(funcPath, argsId) {
|
|
49137
49169
|
},
|
49138
49170
|
|
49139
49171
|
visitIdentifier: function(path) {
|
49140
|
-
if (path.value.name === "arguments"
|
49141
|
-
|
49142
|
-
|
49143
|
-
|
49144
|
-
|
49145
|
-
|
49146
|
-
if (!isMemberProperty) {
|
49147
|
-
path.replace(argsId);
|
49148
|
-
didReplaceArguments = true;
|
49149
|
-
return false;
|
49150
|
-
}
|
49172
|
+
if (path.value.name === "arguments" &&
|
49173
|
+
util.isReference(path)) {
|
49174
|
+
path.replace(argsId);
|
49175
|
+
didRenameArguments = true;
|
49176
|
+
return false;
|
49151
49177
|
}
|
49152
49178
|
|
49153
49179
|
this.traverse(path);
|
49154
49180
|
}
|
49155
49181
|
});
|
49156
49182
|
|
49157
|
-
// If the traversal replaced any arguments
|
49158
|
-
//
|
49159
|
-
//
|
49160
|
-
|
49183
|
+
// If the traversal replaced any arguments references, then we need to
|
49184
|
+
// alias the outer function's arguments binding (be it the implicit
|
49185
|
+
// arguments object or some other parameter or variable) to the variable
|
49186
|
+
// named by argsId.
|
49187
|
+
return didRenameArguments;
|
49161
49188
|
}
|
49162
49189
|
|
49163
49190
|
var awaitVisitor = types.PathVisitor.fromMethodsObject({
|
@@ -62896,7 +62923,7 @@ module.exports = function (str) {
|
|
62896
62923
|
module.exports={
|
62897
62924
|
"name": "babel-core",
|
62898
62925
|
"description": "A compiler for writing next generation JavaScript",
|
62899
|
-
"version": "5.6.
|
62926
|
+
"version": "5.6.5",
|
62900
62927
|
"author": "Sebastian McKenzie <sebmck@gmail.com>",
|
62901
62928
|
"homepage": "https://babeljs.io/",
|
62902
62929
|
"license": "MIT",
|
@@ -62959,7 +62986,7 @@ module.exports={
|
|
62959
62986
|
"output-file-sync": "^1.1.0",
|
62960
62987
|
"path-is-absolute": "^1.0.0",
|
62961
62988
|
"private": "^0.1.6",
|
62962
|
-
"regenerator": "0.8.
|
62989
|
+
"regenerator": "0.8.31",
|
62963
62990
|
"regexpu": "^1.1.2",
|
62964
62991
|
"repeating": "^1.1.2",
|
62965
62992
|
"resolve": "^1.1.6",
|
data/lib/babel/source.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: babel-source
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.6.
|
4
|
+
version: 5.6.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sebastian McKenzie
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-06-
|
11
|
+
date: 2015-06-24 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description:
|
14
14
|
email: sebmck@gmail.com
|