Sebastian McKenzie
9624f8287d
add checkNode to block scoped functions transformer
2015-02-08 14:34:10 +11:00
Sebastian McKenzie
e42d5a889e
make destructuring in catch clauses block scoped and add support for non-variable destructuring in for-in/of heads
2015-02-08 14:33:55 +11:00
Sebastian McKenzie
4c8e6481b6
make default parameters iife invocation less serious
2015-02-08 09:54:24 +11:00
Sebastian McKenzie
0867df2691
fix ForOf block body not properly inheriting declarations
2015-02-08 09:50:12 +11:00
Sebastian McKenzie
b06f99ab30
add iife detection to non-identifier params in default parameters
2015-02-08 09:37:06 +11:00
Sebastian McKenzie
9afa3f6b58
add opts param to t.isReferencedIdentifier
2015-02-08 09:31:41 +11:00
Sebastian McKenzie
785cb4b72f
allow optional transformer to be set via the whitelist
2015-02-08 09:31:30 +11:00
Sebastian McKenzie
dabe69856a
add additional checks to transformers
2015-02-08 09:31:19 +11:00
Sebastian McKenzie
24e70802b5
fix block scoped tracking in functions - fixes #710
2015-02-08 09:31:04 +11:00
Ingvar Stepanyan
4c318166e1
Added complete TCO (tail call optimization).
...
Works across functions and generates simpler and faster code than #701 .
Works even across files when used in conjunction with `runtime` option.
Closes #256 .
2015-02-07 22:22:38 +02:00
Sebastian McKenzie
c0af67eca1
add support for super in object literals - fixes #411
2015-02-08 02:01:17 +11:00
Sebastian McKenzie
eb14f1da00
implement optional TDZ - fixes #563
2015-02-08 01:27:22 +11:00
Sebastian McKenzie
3361b81658
expose parentPath
2015-02-08 01:27:00 +11:00
Sebastian McKenzie
067cf43f52
fix File::addHelper unknown helper error message
2015-02-08 00:01:26 +11:00
Sebastian McKenzie
8a143bf957
use a template in tail call transformer - @RReverser
2015-02-07 23:52:35 +11:00
Sebastian McKenzie
9f7bcf585d
remove dead TraversalContext code
2015-02-07 23:51:05 +11:00
Sebastian McKenzie
f9efd8a272
fix error message in File::addHelper
2015-02-07 23:50:56 +11:00
Sebastian McKenzie
eb1ae70bfa
Merge pull request #701 from RReverser/master
...
Add tail recursion optimization.
2015-02-07 23:37:43 +11:00
Ingvar Stepanyan
b53b41cef3
Provide placeholders for proper function length.
2015-02-07 14:26:03 +02:00
Sebastian McKenzie
e06aac4783
Revert "make export { foo as default }; trigger common interop"
...
This reverts commit 07c7b5b419a99802e2949b72c5cbf6ee4010929a.
2015-02-07 19:40:49 +11:00
Sebastian McKenzie
07c7b5b419
make export { foo as default }; trigger common interop
2015-02-07 19:29:59 +11:00
Sebastian McKenzie
7f985fe08a
fix incorrect strict module formatter variable - fixes #706
2015-02-07 19:29:32 +11:00
Sebastian McKenzie
8dc634edfc
add options to require cache key - fixes #707
2015-02-07 19:18:12 +11:00
Sebastian McKenzie
e75ce94578
move reactCompat option onto an optional transformer
2015-02-07 15:59:00 +11:00
Sebastian McKenzie
5537250d4f
fix linting errors
2015-02-07 10:40:01 +11:00
Sebastian McKenzie
f2ae88af93
add commonStandard module formatter - fixes #675
...
will be merged into strict formatters in next major
TODO: rewrite all module formatters as they've gotten out of han
2015-02-07 10:31:52 +11:00
Sebastian McKenzie
726451f86f
reverts d6b39bc89b6022aecf69da500deb5b88a0266b85
2015-02-07 09:54:18 +11:00
Sebastian McKenzie
a051a47048
reorder types requires
2015-02-07 08:11:42 +11:00
Ingvar Stepanyan
5b2216b348
Add tail recursion optimization.
...
As per ES6, VMs should perform tail call optimization and prevent growth of call stack.
This adds tail call optimization for recursion case (when function has explicit name and calls itself in `return`).
Cross-function optimization is not currently performed as it's more complicated and requires value tracking.
2015-02-06 16:34:35 +02:00
Sebastian McKenzie
ad60d49611
fix bindingEquals in constants transformer
2015-02-06 23:35:19 +11:00
Sebastian McKenzie
a6d1a5a724
add bindingEquals, typeEquals, referenceEquals helper methods to Scope
2015-02-06 23:07:10 +11:00
Sebastian McKenzie
399d835285
fix linting errors
2015-02-06 23:06:54 +11:00
Sebastian McKenzie
b66367ddde
change namespace of minification.propertyLiterals and minifciation.memberExpressionLiterals to es3
2015-02-06 22:42:16 +11:00
Sebastian McKenzie
37d29b7a6f
clean up function scope collection - @RReverser
2015-02-06 22:04:13 +11:00
Sebastian McKenzie
1e708fb373
fix traverse test
2015-02-06 01:59:45 +11:00
Sebastian McKenzie
76ae1682a3
remove context arg in favor of this, rename TraversalIteration to TraversalPath, and remove ast handlers
2015-02-06 01:47:43 +11:00
Sebastian McKenzie
2ef0aa95c5
clean up indentation
2015-02-06 01:17:42 +11:00
Sebastian McKenzie
9cbb49c6b2
don't return the sourcemap when inline is requested - 6to5/grunt-6to5#18
2015-02-05 22:25:33 +11:00
Sebastian McKenzie
beb5ccab25
split up traversal so it's easier to maintain and extend later on
2015-02-05 19:42:08 +11:00
Sebastian McKenzie
c35a007401
simplify replace supers helper
2015-02-05 19:41:37 +11:00
Sebastian McKenzie
e639c82f2f
fix internal refactoring...
2015-02-05 14:08:02 +11:00
Sebastian McKenzie
f365cc1248
more internal rearchitecturing
2015-02-05 14:05:15 +11:00
Sebastian McKenzie
2b75c67448
better scope traversal inferType todo comments
2015-02-05 11:16:13 +11:00
Sebastian McKenzie
386e221a0f
don't override core supported member expressions if there's a local binding
2015-02-05 09:53:12 +11:00
Sebastian McKenzie
dc7e963c9f
style fixes
2015-02-05 08:27:59 +11:00
Sebastian McKenzie
4b2cf2e2c5
fix styling errors
2015-02-04 23:24:08 +11:00
Sebastian McKenzie
23b8c72e9a
remove unused traverse requires
2015-02-04 23:22:26 +11:00
Sebastian McKenzie
c84af909f7
track end of node positions for sourcemaps - fixes douglasduteil/isparta#8
2015-02-04 23:10:54 +11:00
Sebastian McKenzie
d6b39bc89b
HomeObject isn't dynamic - fixes #690
2015-02-04 18:47:58 +11:00
Sebastian McKenzie
39fe737cb6
rename es7.objectSpread transformer to es7.objectRestSpread
2015-02-04 18:35:43 +11:00