강동윤
8a8db58f1c
fix(ecmascript): Fix bugs related to string literals ( #1287 )
...
swc_ecma_ast:
- Add `Str.kind`.
swc_ecma_transforms:
- Fix quotes in template literals. (#1280 )
swc_ecma_codegen:
- Fix escape of single quotes. (#1259 )
- Fix codegen of wrong escapes. (#1276 )
swc:
- Ensure that #1271 is about napi's deserialization.
2020-12-22 04:27:18 +09:00
강동윤
688d16f228
Import assertion / json modules ( #1100 )
...
swc_atoms:
- Add "assert".
swc_ecma_ast
- Add a field to an import declaration.
swc_ecma_parser:
- Parse assertions in import statements.
- Parse assertions in top-level dynamic imports.
- Parse assertions in non-top-level dynamic imports.
swc_ecma_transforms:
- Fix compilation.
2020-09-23 14:27:27 +09:00
강동윤
8e237288d7
Migrate to napi ( #1009 )
2020-08-30 15:29:42 +09:00
강동윤
993b77b325
Improve error messages ( #980 )
...
swc_ecma_parser:
- Improve error messages
2020-08-21 14:57:16 +09:00
강동윤
a1d33d023a
Improve ux using swc as a rust library ( #893 )
...
swc_ecma_parser:
- Improve parser's error reporting story
- Replace `Session`, `Handler`, `Emitter` with Parser.take_errors()
- Expose `Error`
- Remove useless lifetime parameters
2020-07-25 20:26:04 +09:00
강동윤
d82e6ab69d
Fix parsing of class member named declare ( #822 )
2020-06-04 02:52:40 +09:00
강동윤
ebc7070d1f
Fix parser ( #727 )
...
- Allow await in an yield expression (fixes #720 )
- Prevent duplicate tokens while capturing (fixes #726 )
2020-03-25 17:40:05 +09:00
강동윤
1fc09caa2f
type-only import, exports ( #662 )
2020-02-13 22:56:13 +09:00
kdy1
01659585e4
Fix parsing of jsx attribute values ( #616 )
...
Closes #614 .
Closes #615 .
2020-01-29 06:24:35 +00:00
kdy1
d06eeed352
Async generator ( #613 )
...
Change parser to accept async generator.
Closes #612 .
2020-01-29 02:59:25 +00:00
kdy1
96e1dbe213
Improve hygiene and use JSXAttrValue ( #592 )
...
swc_ecmacript:
- use JSXAttrValue (Fixes #584 )
swc_ecma_transforms:
- make hygiene pass check for exported vars (Fixes #591 )
2020-01-17 05:45:33 +00:00
David Sherret
0d67d5d855
Fix JSX opening, closing, spread child, and expression container spans ( #582 )
...
swc_ecma_parser:
- fix opening and closing jsx spans.
- fix JSX expression.
- fix JSX spread child.
2020-01-14 12:37:29 +09:00
강동윤
c0cc2185ea
Fix ci ( #561 )
...
- line endings are normalized
- switched to github actions from travis to check forked branches
2020-01-04 13:33:25 +09:00
강동윤
aa2a394f7d
Fix #542 ( #543 )
...
swc_ecma_transforms:
- preserve space after a jsx element
2019-12-30 00:05:43 +09:00
David Sherret
bde5341bd7
Fix string literal span on import/export specifiers to only include string literal ( #540 )
2019-12-29 16:18:14 +09:00
강동윤
24b5c44ba3
Numeric separator & Bigint ( #523 )
...
swc_ecma_ast:
- `BigInt` literal
swc_ecma_parser:
- numeric separators. (#521 )
- parsing of bigint literal
2019-12-22 17:14:04 +09:00
강동윤
ed8ba26ae6
Fix tests
2019-12-21 17:09:53 +09:00
강동윤
6186af04a9
Fix handling of jsx texts ( #519 )
...
swc_ecma_transforms:
- Fix handling of jsx texts (#517 )
2019-12-21 16:59:04 +09:00
강동윤
30af06bb70
Ast ( #513 )
...
swc_ecmascript:
- add `ExprStmt`.
- change type of regex.expression and regex.flags.
2019-12-16 18:08:21 +09:00
강동윤
332061f44d
Parser: respect jsc.target ( #507 )
...
swc:
- make parser respect `jsc.target`.
2019-12-14 18:51:08 +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
강동윤
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
강동윤
d074063867
Parser: Error recovery ( #449 )
...
Implement some error recovery logic to parser
2019-11-17 18:36:47 +09:00
강동윤
bc4a2976e5
Validate spans ( #447 )
...
- Add span validator to swc_ecma_transforms
2019-11-16 23:49:32 +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
강동윤
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
강동윤
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
강동윤
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
강동윤
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
강동윤
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
강동윤
ea610c6ded
Typescript & parser for decorators
...
swc_atoms:
- add some atoms
swc_ecma_ast:
- ast nodes for typescript
- `ClassMethod` -> `Method`, `ClassMethodKind` -> `MethodKind`
- private class method / class property
- use separate type for tagged template literals
- add `declare` field to `Decl`s
- make function body optional
swc_ecma_parser:
- rename Type to TokenContext
- support decorators
Note: error reporting for invalid decorator is not implemented yet
- merge `Config` into `Syntax`
- Use DiagnosticBuilder for error type
This is to make backtracking cheaper.
swc_ecma_transforms:
- add `strip` pass
2019-01-07 19:43:47 +09:00
강동윤
603b83291d
jsx support ( #100 )
...
swc_ecma_parser:
- implement parser for jsx
swc_ecma_transforms:
- implement react::jsx transform
swc_ecma_codegen:
- implement code generator for jsx
2018-12-30 11:57:27 +09:00