Commit Graph

71 Commits

Author SHA1 Message Date
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
Donny/강동윤
fd223793e8
refactor(es/transforms): Use recommended ast apis (#3735) 2022-02-25 06:50:19 +00:00
magic-akari
1743302819
feat(es/typescript): Inline typescript enums (#3647) 2022-02-24 09:19:49 +00:00
Donny/강동윤
135acf3b42
refactor(es): Improve ast apis (#3690) 2022-02-23 05:37:07 +00:00
Donny/강동윤
68a155165b
fix(es/ast): Fix definition of Expr::TsInstantiation (#3657) 2022-02-21 13:03:11 +00:00
Austaras
2cb66ae075
refactor(es/ast): Change definition of optional chaining expressions (#3645) 2022-02-21 07:12:09 +00:00
Pig Fang
61e711c912
feat(es/ast): Support TypeScript Instantiation Expression (#3642) 2022-02-20 15:51:31 +00:00
Austaras
0b162102fa fix(es/compat): Fix handling of constructor in classes (#3505)
swc_ecma_transforms_compat:
 - Use `SuperFieldAccessFolder` for `super` fields in constructors.
 - Fix handling of variables in constructors with the same name as the class name.
 - Fix handling of functions in constructors with this/super.
2022-02-14 18:14:55 +09:00