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
Sebastian McKenzie
37ef976515
more cleanup of the destructuring transformer
2015-02-04 18:21:10 +11:00
Sebastian McKenzie
fa5a3022d4
clean up destructuring transformer
2015-02-04 17:48:27 +11:00
Sebastian McKenzie
58bed088f5
throw an error when destructuring a null or undefined value on an empty object pattern - fixes #681
2015-02-04 17:35:24 +11:00
Sebastian McKenzie
4f023e83f8
refactor traversals that have scopes to use the scope helper method
2015-02-04 13:25:23 +11:00
Sebastian McKenzie
7d950cd60a
i made the javascripts faster with a transformer prepass to check what transformers actually have to be ran
2015-02-04 12:56:34 +11:00
Sebastian McKenzie
ffc9244f88
make #683 more inline with the official jsx compiler
2015-02-04 10:38:35 +11:00
Sebastian McKenzie
5a81d22167
Merge pull request #683 from caseywebdev/concat-string-literals
...
Concatenate adjacent string literals in JSX
2015-02-04 10:22:51 +11:00
Sebastian McKenzie
911e3939b9
remove class-super-constructor-call-check helper
2015-02-04 10:08:55 +11:00
Sebastian McKenzie
55f2cffc22
fix linting errors
2015-02-04 10:05:20 +11:00
Sebastian McKenzie
36fa174901
change instance reference to this in class super constructor call template - fixes #689
2015-02-04 10:03:15 +11:00
Sebastian McKenzie
e8dc4628ae
better handle spaces in IfStatement generator
2015-02-04 08:40:23 +11:00
Sebastian McKenzie
7a0dbb0203
fix node removal
2015-02-04 08:39:54 +11:00
Sebastian McKenzie
8d81a382f7
inline back the super constructor call helper - fixes #684
2015-02-04 08:39:45 +11:00
Sebastian McKenzie
86fbba08d8
add concise format option
2015-02-04 08:39:17 +11:00
Sebastian McKenzie
23c6e7e168
fix incorrect getThisReference bind - fixes #688
2015-02-04 08:26:18 +11:00
Sebastian McKenzie
c35f041091
simplify to.isFalsyExpression method
2015-02-04 08:25:40 +11:00
Sebastian McKenzie
618c6a8e67
add isLiteral to inferType
2015-02-04 08:25:15 +11:00
Sebastian McKenzie
23429f7b7f
remove blank optimization
2015-02-04 08:25:00 +11:00
Sebastian McKenzie
3b3255a964
delegate removal of nodes in traversal to exitNode
2015-02-04 08:24:38 +11:00
Sebastian McKenzie
49847e70af
add some minification transformers
2015-02-04 08:23:58 +11:00
Sebastian McKenzie
c228d76e44
add 6to5-minify
2015-02-04 08:23:49 +11:00
Casey Foster
2562b0c201
Concatenate adjacent string literals in JSX
2015-02-03 10:46:54 -06:00
Sebastian McKenzie
6da6bc3eb8
remove callExpression type inferrence
2015-02-03 22:32:00 +11:00
Sebastian McKenzie
f06535e915
rename Scope.init to Scope.crawl
2015-02-03 22:22:36 +11:00
Sebastian McKenzie
29f866525e
clean up scope tracking and add some simple flow type tracking and inferrence #653
2015-02-03 21:06:21 +11:00
Sebastian McKenzie
8e708906a8
fix linting errors
2015-02-03 20:11:38 +11:00