Commit Graph

78 Commits

Author SHA1 Message Date
Donny/강동윤
5cddb4c734
feat(es/typescript): Support TS 4.9 (#5938)
**Description:**

This PR adds satisfaction expression to the AST and parser.
2022-09-23 16:41:56 +09:00
Donny/강동윤
1a182ef8d9
perf(es): Optimize memory layout of AST (#5829) 2022-09-20 12:47:21 +09:00
IWANABETHATGUY
7d6d04b421
fix(es/codegen): Drop the last comma in an array literal (#5877)
**Description:**

Drop the last comma in an array literal.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/5692.
2022-09-16 15:48:28 +09:00
OJ Kwon
092b7281d0
refactor(es/ast): Apply rkyv-bytecheck flag (#5866) 2022-09-15 05:20:46 +00:00
Donny/강동윤
4cde553811
fix(es/ast): Revert #5798 (#5798) (#5855)
This reverts commit 37f42df877.
2022-09-14 16:52:46 +09:00
OJ Kwon
37f42df877
refactor(es/ast): Apply rkyv-bytecheck flag (#5798)
**Description:**

This PR updates ast* related package's rkyv bytecheck flags.
2022-09-14 16:16:18 +09:00
IWANABETHATGUY
9fc6eda89a
fix(es/parser): Fix detection of wrong delete targets (#5754) 2022-09-05 13:36:24 +00:00
Donny/강동윤
488562baac
doc(rustdoc): Document rust APIs (#5647) 2022-08-27 06:06:19 +00:00
Donny/강동윤
e8edb67def
feat(es): Improve APIs for plugin authors (#5632)
- All variants of `Expr` now implement `Into<Box<Expr>>`.
 - All variants of `Expr` now implement `Into<PatOrExpr>`.
 - All variants of `Pat` now implement `Into<PatOrExpr>`.
 - All variants of `Pat` now implement `Into<Param>`.
 - `StmtOrModuleItem` is improved.
2022-08-26 09:28:14 +00:00
Donny/강동윤
83fec33359
feat(es/generator): Use new generator implementation (#5627) 2022-08-25 16:10:47 +00:00
Donny/강동윤
927ae7e8d3
fix(es/compat): Revert generator reimplementation (#5624) 2022-08-25 17:58:37 +09:00
Donny/강동윤
2aa009018f
feat(es/generator): Replace generator implementation with one from tsc (#5173) 2022-08-25 04:50:00 +00:00
Donny/강동윤
2f7e322214
fix(es): Improve sourcemap (#5569) 2022-08-20 12:35:49 +09:00
Donny/강동윤
3eb1f4b2b1
chore(ci): Fix lints (#5462) 2022-08-12 13:13:35 +00:00
OJ Kwon
6a36a8d982
fix(plugin): Disable remaining bytecheck (#5437) 2022-08-11 01:23:00 +00:00
Austaras
e35990390b
fix(es/fixer): Remove needless parens for nested ?? (#5432) 2022-08-10 08:26:33 +00:00
brightwu
56b10367a3
feat(ast): Make css/html ast serializable (#5427) 2022-08-10 03:48:35 +00:00
overlookmotel
53627aff44
fix(es/ast): Fix json deserialization of AssignExpr (#5179) 2022-08-09 14:15:45 +00:00
OJ Kwon
2b5080e291
fix(es): Temporarily disable bytecheck (#5414) 2022-08-08 02:58:08 +00:00
Austaras
8611161c02
fix(es/minifier): Ignore member expression without side-effects in assign position (#5344) 2022-07-31 16:40:58 +09:00
Donny/강동윤
037a53d5d1
perf(es/ast): Use Atom in some places (#5271) 2022-07-22 20:09:25 +09:00
OJ Kwon
43eeeb35a5
feat(es/plugin): Pass experimental metadata from host (#5261) 2022-07-21 05:34:48 +00:00
OJ Kwon
b7c7e3afb0
test(es/plugin): Test plugins with different schema versions (#5255) 2022-07-20 04:08:48 +00:00
Donny/강동윤
c91abb2ca7
feat(quote): Support different types for variables (#5194) 2022-07-13 19:02:00 +09:00
OJ Kwon
82fbe15a57
feat(plugin): Wrap serialized struct with a version (#5128) 2022-07-07 07:46:49 +00:00
OJ Kwon
e1aa937183
feat(plugin): Allow taking the inner data from versioned (#5071) 2022-06-30 01:21:12 +00:00
Donny/강동윤
2e139f1441
perf(atoms): More groundwork for replacing JsWord with Atom (#5064) 2022-06-29 13:08:29 +09:00
OJ Kwon
e34a864390
feat(plugin): Add versioned wrapper struct (#5062) 2022-06-29 03:35:23 +00:00
magic-akari
fa68cbd74a
refactor(es/module): Implement new module transformer (#4758) 2022-06-27 12:32:06 +00:00
Austaras
47bdc6a6b1
feat(es/minifier): Turn Array/Object calls into literals (#4947) 2022-06-12 02:36:49 +00:00
OJ Kwon
6bc33cb042
feat(es/codegen): Support other source map implementations (#4879) 2022-06-05 14:40:55 +00:00
Donny/강동윤
b7a195a1cf
refactor(es/parser): Remove duplicate (#4750) 2022-05-23 09:42:29 +00:00
Donny/강동윤
98df64517e
perf(common): Add more methods to Spanned (#4749)
- Lots of code only needs `lo` or `hi`, but they call `span()`, which is inefficient in some cases.
 - This PR only adds a trivial amount of optimization. I may add full optimization in future.
 - This PR improves codegen performance of `ExprOrSpread` and `Option<ExprOrSpread>`.
2022-05-23 09:18:40 +00:00
Donny/강동윤
07356a5bba
fix(es/ast): Fix EqIgnoreSpan of Ident (#4689) 2022-05-17 10:21:01 +00:00
Donny/강동윤
2c861bd9e5
feat(es/ast): Improve Id APIs (#4614)
# API Changes

 - `Ident` now has `to_id()`. This method is added to allow removing an import.
2022-05-11 12:02:14 +09:00
Donny/강동윤
55d0ee6cba
feat(es/ast): Add methods for parens (#4576) 2022-05-08 16:02:23 +00:00
William Tetlow
e2fde1a9a7
fix(es/parser): Revert #4287 (#4542) 2022-05-06 04:07:00 +00:00
Austaras
2e74787870
fix(es/compat): Memorize computed props in logical assignment (#4525) 2022-05-05 02:25:37 +00:00
overlookmotel
2813eaadcd
fix(es/ast): Fix tag of BigInt (#4440) 2022-04-26 00:09:14 +00:00
Austaras
8cf3ddda6c
feat(es/minifier): Improve handling of switches (#4260) 2022-04-21 10:00:25 +00:00
magic-akari
d0de5a63a0
feat(es): Support typeof with private fields (#4302) 2022-04-11 20:02:51 +00:00
Alexander Akait
f39d3aca4d
feat(es/ast): Add raw to Num (#4245) 2022-04-05 12:46:35 +00:00
Alexander Akait
e91f271873
feat(es/ast): Add raw to BigInt (#4218) 2022-04-02 06:04:14 +00:00
magic-akari
b793aa0200
feat(es/compat): Support more regex expressions (#4205) 2022-04-01 04:26:30 +00:00
magic-akari
bf1924d1a8
feat(es/typescript): Support optional variance annotations (#4008) 2022-03-23 14:36:37 +00:00
Alexander Akait
634d732803
feat(es/ast): Add raw to Str (#4071) 2022-03-22 07:54:08 +00:00
Austaras
bbe8f3d8fe
fix(es/ast): Revert removal of definite in PrivateProp (#4051) 2022-03-17 05:33:37 +00:00
Philip Craig
3b04789a57
perf(es/ast): Implement Clone without inline for some enums (#3878) 2022-03-06 09:12:23 +00:00
Austaras
26abc6ba7e
refactor(es/ast): Remove useless fields in private property (#3868) 2022-03-05 23:51:04 +09:00
Donny/강동윤
44262508c6
fix(es/parser): Use unicode id instead of xid (#3867) 2022-03-05 12:24:45 +00:00