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