Justin Ridgewell
0740e61131
Use strict
2017-06-08 00:47:19 -04:00
Justin Ridgewell
97d0ab78cb
Update babylon
2017-06-07 03:52:42 -04:00
Justin Ridgewell
462825b15a
Simplify transform
...
This also makes the output use less comparisons for `foo?.()?.bar`
cases. 😁
2017-06-07 03:22:52 -04:00
Justin Ridgewell
9e91ac54d3
Optional call expressions short circuit later member expressions
2017-06-07 03:22:52 -04:00
Justin Ridgewell
54d9732d0b
Test Update and Unary expressions
2017-06-07 03:22:52 -04:00
Justin Ridgewell
d92309f0db
PR comments
2017-06-07 03:22:52 -04:00
Justin Ridgewell
faa6c9f708
Use nil
2017-06-07 03:22:52 -04:00
Justin Ridgewell
6cc2f5dc78
Consider any unary expression
2017-06-07 03:22:52 -04:00
Justin Ridgewell
a62cb9281e
Delete unnecessary check
2017-06-07 03:22:52 -04:00
Justin Ridgewell
ef87acc389
Test not-top-level optional chaining
2017-06-07 03:22:51 -04:00
Justin Ridgewell
1f22ac353a
Lint
2017-06-07 03:22:51 -04:00
Justin Ridgewell
0e5f597ee6
Readme
2017-06-07 03:22:51 -04:00
Justin Ridgewell
899634d20b
Add exec tests
2017-06-07 03:22:51 -04:00
Justin Ridgewell
9ce797dd34
Reduce context memoization when possible
2017-06-07 03:22:51 -04:00
Justin Ridgewell
acdd3637bc
Refactor
2017-06-07 03:22:51 -04:00
Justin Ridgewell
5fe4803562
Simplify NewExpression|CallExpression visitor
2017-06-07 03:22:51 -04:00
Justin Ridgewell
30ee87159d
Split syntax and transform into two plugins
2017-06-07 03:22:51 -04:00
Justin Ridgewell
2a496890ff
Use a better nested syntax
...
This way, it quickly returns from the conditions. The first nil will
now exit, instead of checking every nil.
This also allows conditionalChaining inside a container to still
operate the container.
2017-06-07 03:22:51 -04:00
Justin Ridgewell
3fae121460
Implement Null Propagation Operator
2017-06-07 03:22:51 -04:00
Sven SAULEAU
750b03a22f
refactor: use WeakSet to keep track of transformed nodes
2017-06-07 03:22:51 -04:00
Sven SAULEAU
98487b5a15
fix: typo
2017-06-07 03:22:51 -04:00
Sven SAULEAU
a9d8040c0f
refactor: change undefined to void 0
2017-06-07 03:22:51 -04:00
Sven SAULEAU
3faca62a77
wip
2017-06-07 03:22:51 -04:00
Sven SAULEAU
cc6959e1fa
feat: WIP assignements
2017-06-07 03:22:51 -04:00
Sven SAULEAU
6bd3bf4d2f
feat: optional chaining with function call
2017-06-07 03:22:51 -04:00
Sven SAULEAU
ed15443dba
fix: use undefined instead of null
2017-06-07 03:22:51 -04:00
Sven SAULEAU
64ff5a080d
refactor: improved transformation logic
2017-06-07 03:22:51 -04:00
Sven SAULEAU
72259ca5d3
feat: cleanup
2017-06-07 03:22:51 -04:00
Sven SAULEAU
00f58b9bfa
feat: optional chaing
2017-06-07 03:22:51 -04:00