강동윤
1a48efa4e4
ES3 ( #498 )
...
* Add a test for #496
- Better error message for TS1056
- Allow using dynamic import with es3 target
2019-12-11 13:35:15 +09:00
Nurbol Alpysbayev
2f4ce50d06
Fix the Wasm blocker for Parser ( #495 )
2019-12-11 00:02:39 +09:00
강동윤
ef45401a18
Update tests
2019-12-10 10:50:37 +09:00
강동윤
ae6de87abb
Add more tests ( #489 )
2019-12-09 21:02:51 +09:00
강동윤
bc19ee274b
Update parser test references
2019-12-02 17:12:53 +09:00
Zimon Dai
ec086a1dab
use 2018 edition syntax ( #479 )
2019-12-02 17:10:05 +09:00
강동윤
776e014a11
Fix tests ( #478 )
2019-12-01 18:11:59 +09:00
강동윤
265eb9e30c
Improve performance of serialization and deserialization ( #475 )
2019-11-30 14:49:18 +09:00
강동윤
41c6941dc5
fixup! Don't omit empty values while serializing
2019-11-28 17:53:03 +09:00
강동윤
5532e628b2
Don't run cargo clippy on push
2019-11-28 13:38:11 +09:00
강동윤
747a07f566
Update submodules
2019-11-26 20:42:41 +09:00
강동윤
b81200b1db
Update references
2019-11-26 11:31:16 +09:00
강동윤
fa941b3ea3
resolver: Handle arrow expression correctly ( #462 )
...
swc_ecma_transforms:
- resolver: Handle arrow expression correctly (#462 )
2019-11-23 19:14:52 +09:00
강동윤
d50ab99ef0
Fix #451 ( #452 )
...
swc_ecma_parser:
- Fix parser of eval and arguments
swc_ecma_transforms:
- Improve fixer (#451 )
2019-11-18 18:19:25 +09:00
강동윤
d074063867
Parser: Error recovery ( #449 )
...
Implement some error recovery logic to parser
2019-11-17 18:36:47 +09:00
Jasper De Sutter
716bfe05b2
Cleanup ( #448 )
...
- cargo fix
- update all crates to 2018 edition
2019-11-17 13:21:53 +09:00
강동윤
bc4a2976e5
Validate spans ( #447 )
...
- Add span validator to swc_ecma_transforms
2019-11-16 23:49:32 +09:00
강동윤
37b80dfd08
Optional chaining for typescript ( #444 )
...
Implement typescript 3.7's optional chaining
2019-11-15 14:34:48 +09:00
강동윤
167008de6f
Expose tokenizer ( #437 )
...
swc_common:
- Added input::Input
swc_ecma_parser:
- Made lexer public
- Make input type of parser generic
- Added example of using lexer
2019-11-06 13:14:44 +09:00
강동윤
7f5d3a4db1
Fix parsing of single untyped param in IIFE
...
Closes #433
2019-10-23 20:53:28 +09:00
강동윤
2e5c81ee8e
Fix parsing readonly array and tests
...
Closes #432
2019-10-23 20:20:17 +09:00
강동윤
9f1fca55ff
Update rustc toolchain to nightly-2019-09-30
2019-10-02 13:53:56 +09:00
강동윤
61a1367974
Fix #410
2019-09-20 23:35:45 +09:00
강동윤
c7abda95d4
typescript const assertion ( #419 )
...
Fixes #401 .
2019-09-18 22:54:12 +09:00
강동윤
0e1991f62d
Fix bugs ( #394 )
...
- Add a test case for #392
- Add tests for #389
- Fix #388
- Fix #387
- Add tests for #392
swc_ecma_parser:
- Make non-last rest paramters in object pattern error
- `...` must be followed by an identifier
2019-06-03 21:54:09 +09:00
강동윤
b4dde98c09
Fix #380 ( #381 )
...
swc_ecma_parser:
- fix parsing of dot after dynamic imports (#380 )
- fix parsing of dynamic imports on top level
2019-04-29 23:36:30 +09:00
강동윤
b44da9dbe4
Fix #369 , #370 ( #373 )
...
swc_common:
- don't emit `loc` for dummy spans
swc_ecma_transforms:
- prevent hygiene from changing key in object pattern (#369 )
- fix module tests (iteration order of FxHashSet is changed)
swc_ecma_parser:
- fix parsing of arrow function (#370 )
2019-04-27 16:28:34 +09:00
강동윤
fe451d5809
Fix #360 and update rustc
2019-04-05 12:19:18 +09:00
Michael Stewart
6f97012821
fix test imports for latest nightly ( #355 )
2019-03-23 13:18:55 +09:00
강동윤
13bf89d08c
Fix bugs ( #339 )
...
swc_ecma_parser:
- fix parsing of type query (#338 )
- fix parsing of `in` in a let / const declaration (#337 )
swc_ecma_transforms:
- string literal is computed (#336 )
- modules: handle imports in lhs of assignment correctly (#335 )
2019-03-11 20:33:15 +09:00
강동윤
a40518f667
v1.0.36 ( #330 )
...
swc_ecma_parser
- decorator_before_export is true for typescript. (#325 )
- fix parsing of dynamic imports. (#328 )
- fix parsing of conditional expression. (#327 )
2019-03-09 09:07:15 +09:00
강동윤
248a53ce7c
Make deserialization faster ( #324 )
...
swc_ecma_ast:
- make deserialization faster
2019-03-08 11:36:23 +09:00
강동윤
f49fbea2af
Update referenes
2019-02-28 19:30:58 +09:00
강동윤
a75dbdf2f2
Update references
2019-02-25 19:47:53 +09:00
강동윤
dff2cb8f75
Implement deserialize for ast nodes ( #274 )
...
string_enum:
- #[derive(StringEnum)] now derives `Deserialize`
swc_ecma_ast:
- implement deserialize for ast nodes.
- change ast to make it serialized / deserialized correctly
swc_ecma_parser:
- jsx, test262, typescript tests now verify serialization and deserialization of module
2019-02-24 14:12:04 +09:00
강동윤
07e2cffb43
Fixes ( #265 )
...
swc_ecma_parsr:
- fix parsing of invalid utf8 characters (#261 )
- fix parsing of function body (#257 )
- fix parsing of () => (x = true) (#259 )
swc_ecma_transforms:
- fix default arguments in arrow expression (#254 )
- fix assignment pattern in array pattern (#260 )
- make amd / umd configurable. (#262 )
2019-02-21 22:21:48 +09:00
강동윤
76ce98b685
Implement serialize for ast nodes ( #244 )
...
swc_common:
- implement Serialize / Deserialize for span
swc_ecma_parser:
- use json instead of {:#?} while testing
- update test references
2019-02-20 11:35:41 +09:00
강동윤
4dc10d849e
Fixes ( #237 )
...
swc_ecma_transforms:
- handle pattern correctly in coomon_js pass (#235 )
- fix object rest in arrow expression (#233 )
2019-02-19 12:52:03 +09:00
강동윤
b27829825e
Fix Bugs ( #205 )
...
swc_ecma_codegen:
- escape characters (#204 )
swc_ecma_parser:
- fix parsing of `<!--`
swc_ecma_transforms:
- promote VarCollector to crate-level utility
- fix es3::member_expr_lits (#206 )
- fix es2015::duplicate_keys pass (#203 )
- improve fixer (paren for assignment) (#201 )
- improve fixer (arrow expression) (#207 )
- make typescript pass strip out type-only exports (#196 )
2019-02-14 11:03:06 +09:00
강동윤
c1a3cc53c1
React jsx / improve fixer ( #202 )
...
swc_ecma_parser:
- fix parsing of jsx
swc_ecma_transforms:
- fix fixer (#199 )
2019-02-13 19:12:00 +09:00
강동윤
c647cf1bc0
Fix bugs ( #193 )
...
swc_ecma_parser:
- fix lexer
- better error reporting for jsx reference test
swc_ecma_codegen:
- Update references
2019-02-13 16:03:38 +09:00
강동윤
2d062432a8
Shebang & small improvement for object rest spread ( #184 )
...
swc_ecma_ast:
- handle shebang
swc_ecma_codegen:
- handle shebang
swc_ecma_parser:
- handle shebang
swc_ecma_transforms:
- fix arrow expression used with object rest spread
2019-02-13 11:08:21 +09:00
강동윤
bd219688ac
Typescript bugs ( #170 )
...
swc_ecma_parser:
- fix parsing of cond expression (Closes #158 )
- fix parsing of function signature (Closes #159 )
2019-02-12 22:05:46 +09:00
강동윤
227423d5f6
Export default from & fix codegen of imports ( #168 )
...
swc_ecma_ast:
- Support `export v from 'foo';`
swc_ecma_parser:
- Support `export v from 'foo';`
swc_ecma_codegen:
- Fix codegen of side-effect imports
2019-02-12 15:30:11 +09:00
강동윤
7fe2245a3d
Cleanup ( #152 )
...
- replace Lrc with std::sync::Arc
swc_common:
- make swc_common::sync private
- improve MoveMap
swc_ecma_codegen:
- fix codegen of import.
swc_ecma_transforms:
- properly detect valid identifier.
swc_ecma_parser:
- Fix parsing of cond expr inside paren.
2019-02-11 11:39:20 +09:00
강동윤
ab4f619257
Fix tests ( #142 )
2019-02-10 20:49:29 +09:00
강동윤
43d633b44d
Handle comments and improve codegen ( #136 )
...
swc_ecma_codegen:
- Improve codegen
- Handle comments
swc_ecma_parser:
- Handle comments
2019-02-08 13:00:58 +09:00
강동윤
ba0c7c908c
Improve swc_ecma_trnasforms ( #127 )
...
# swc_ecma_ast
- Add PrivateName to Expr
# swc_ecma_parser
- Fix parsing of private name
# swc_ecma_transforms
## Hygiene
- It correctly tracks `BindingIdentifer` / `IdentifierReference`
- Preserve `IdentiferReference` if it conflicts with a `BindingIdentifier`
## Block scoping
- It correctly tracks `BindingIdentifer` / `IdentifierReference`
## Fixer
- It removes useless parens.
- It removes useless `IdentiferReference`s in comma expressions.
## Classes properties
- public prooperty
- private property
## Class decorators
- implemented
2019-01-29 23:56:16 +09:00
강동윤
9313b04c6c
Enable some assertions and fix ICE on release mode
2019-01-22 12:37:51 +09:00
강동윤
eebf14fbef
Allow stable rust ( #118 )
...
This pr introduces some cargo features. For `swc_common` and `swc_ecma_ast`, it introduces a feature flag `fold`.
`Fold` and `Visit` traits exist only if the feature is enabled.
For `swc_ecma_parser`, flag called `verify` is added. When disabled, we skip checking of validity of some expressions.
e.g. `{foo = bar}`
Verification is disabled by default it requires nightly compiler
2019-01-17 23:17:16 +09:00