merge internal transformers into single traversal pass

This commit is contained in:
Sebastian McKenzie
2015-05-07 15:53:22 +01:00
parent 8a4a76000d
commit 6f664ca64e
48 changed files with 243 additions and 417 deletions

View File

@@ -11,17 +11,17 @@ function one() {
one(1, 2);
function two() {
var _arguments2 = arguments;
var _arguments3 = arguments;
var inner = function inner() {
return _arguments2;
return _arguments3;
};
var another = function another() {
var _arguments3 = arguments;
var _arguments2 = arguments;
var inner2 = function inner2() {
return _arguments3;
return _arguments2;
};
};
@@ -66,4 +66,4 @@ function six(obj) {
};
return fn();
}
six();
six();

View File

@@ -1,11 +1,11 @@
"use strict";
function _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }
var _foo, _foo$bar, _foo$bar2;
function _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }
console.log((_foo = foo, _defaults(_foo, bar), _foo));
console.log((_foo$bar = foo[bar], _defaults(_foo$bar, bar), _foo$bar));
console.log((_foo$bar2 = foo[bar()], _defaults(_foo$bar2, bar), _foo$bar2));
console.log((_foo$bar2 = foo[bar()], _defaults(_foo$bar2, bar), _foo$bar2));