Commit Graph

366 Commits

Author SHA1 Message Date
magic-akari
8353accb13
fix(es/codegen): Emit type_params for TsConstructSignatureDecl (#7080)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7079.
2023-03-17 02:38:45 +00:00
SWC Bot
60ccdab60e chore: Publish crates 2023-03-16 02:20:24 +00:00
Donny/강동윤
963c460613
refactor: Fix lints using clippy from nightly-2023-03-13 (#6920) 2023-03-14 04:56:21 +00:00
SWC Bot
6bf5f03884 chore: Publish crates 2023-03-13 08:34:46 +00:00
SWC Bot
3da6d18d47 chore: Publish crates 2023-03-13 03:27:50 +00:00
SWC Bot
136c498c80 chore: Publish crates 2023-03-12 04:52:09 +00:00
Donny/강동윤
085c6f35f1
fix(es/ast): Fix memory layout (#7062)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7061.
2023-03-12 04:50:28 +00:00
SWC Bot
4015714633 chore: Publish crates 2023-03-12 03:57:57 +00:00
SWC Bot
2486e6b6bf chore: Publish crates 2023-03-11 12:14:51 +00:00
SWC Bot
0b0e61beb6 chore: Publish crates 2023-03-11 03:44:48 +00:00
SWC Bot
d4ebb5e6ef chore: Publish crates 2023-03-10 06:28:00 +00:00
SWC Bot
02e9e49733 chore: Publish crates 2023-03-10 03:54:16 +00:00
SWC Bot
03488a3fb6 chore: Publish crates 2023-03-09 13:36:17 +00:00
Donny/강동윤
a9fe1d2d22
perf(es/ast): Shrink size of Expr (#7041)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/7019.
2023-03-09 13:34:11 +00:00
SWC Bot
50ee7d1c83 chore: Publish crates 2023-03-08 04:57:40 +00:00
SWC Bot
56aac6783b chore: Publish crates 2023-03-08 02:51:08 +00:00
SWC Bot
79549c0f20 chore: Publish crates 2023-03-07 14:50:22 +00:00
SWC Bot
1a368def06 chore: Publish crates 2023-03-05 07:30:48 +00:00
SWC Bot
0ade738e43 chore: Publish crates 2023-03-03 02:49:46 +00:00
SWC Bot
a504e2a11d chore: Publish crates 2023-02-28 08:23:25 +00:00
Donny/강동윤
367ac825f6
refactor(es/parser): Make lexer not generic over Input (#6993)
**Description:**

Currently, it uses `StringInput` as the input type, but I'll refactor it to use `String` or `Vec<u8>` directly to optimize it further.

**Related issue:**

 - https://github.com/swc-project/swc/discussions/6991
2023-02-28 08:20:29 +00:00
SWC Bot
bbb3615af7 chore: Publish crates 2023-02-28 06:42:16 +00:00
Donny/강동윤
37533a23fd
feat(es/parser): Support auto accessors (#6981) 2023-02-28 06:39:25 +00:00
SWC Bot
94138c801c chore: Publish crates 2023-02-28 06:04:29 +00:00
SWC Bot
9e05f4c2d2 chore: Publish crates 2023-02-22 14:20:23 +00:00
SWC Bot
6496796c59 chore: Publish crates 2023-02-22 06:52:59 +00:00
SWC Bot
786f8180ad chore: Publish crates 2023-02-20 05:31:02 +00:00
SWC Bot
b9212cfee0 chore: Publish crates 2023-02-10 02:51:53 +00:00
SWC Bot
cade201a1f chore: Publish crates 2023-02-10 02:30:18 +00:00
SWC Bot
a566f9c999 chore: Publish crates 2023-02-08 05:17:01 +00:00
SWC Bot
e65699c755 chore: Publish crates 2023-02-07 14:35:38 +00:00
SWC Bot
0bb4dc2c3d chore: Publish crates 2023-01-29 14:56:26 +00:00
SWC Bot
5a5a7d70e4 chore: Publish crates 2023-01-27 06:59:44 +00:00
SWC Bot
8fc1b651b1 chore: Publish crates 2023-01-26 02:11:53 +00:00
SWC Bot
8863e31446 chore: Publish crates 2023-01-20 08:11:11 +00:00
Donny/강동윤
df702614e1
fix(es/codegen): Fix codegen of string literals with \x000 (#6838)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6836.
2023-01-20 08:08:58 +00:00
SWC Bot
b1f3eb74df chore: Publish crates 2023-01-16 15:26:01 +00:00
westhide
e9fdac216c
fix(es/codegen): Skip space if jsx attrs is empty (#6823) 2023-01-16 15:23:28 +00:00
SWC Bot
a5707ae7c1 chore: Publish crates 2023-01-15 06:45:26 +00:00
SWC Bot
cd06479a43 chore: Publish crates 2023-01-11 03:00:59 +00:00
SWC Bot
52dada97ff chore: Publish crates 2023-01-10 06:03:34 +00:00
Donny/강동윤
3f0f664c48
fix(es/codegen): Skip lo of a program if body is not empty (#6773)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6767.
2023-01-10 06:01:14 +00:00
SWC Bot
478b1fe458 chore: Publish crates 2023-01-10 05:10:48 +00:00
magic-akari
019cf37199
feat(es/typescript): Support const modifier on type parameters (#6672)
**Related issue:**

 - https://github.com/microsoft/TypeScript/pull/51865.
2023-01-10 05:08:29 +00:00
SWC Bot
a225efe363 chore: Publish crates 2023-01-08 04:59:27 +00:00
Justin Ridgewell
2b503c16d5
fix(es/codegen): Fix LineCol calculation of printed files (#6763)
**Description:**

There were several issues with the way we updated the current `LineCol` position during the printing of the generated file:

- We used `chars` and `char_indices` (UTF-32) instead of `encode_utf16` (UTF-16) chars.
- JS uses UCS-2 (basically UTF-16) for its strings, and source maps default to that implicitly.
- `\r` was incorrectly handled
  - it didn't add a `line_start`; only `\n` did
- `\r\n` was incorrectly handled
- It was trying to let the `\n` path handle the `line_start`, but it called
`chars.next()` which ate the `\n` char.

I also took the opportunity to avoid the `Vec` allocations and reduced some code duplication.

See the
[before](https://evanw.github.io/source-map-visualization/#ODEzAC8qKgogKiBmb28KICogQHBhcmFtIGRhdGEgZm9vCiAqIEByZXR1cm5zIGZvbwogKi8gZXhwb3J0IGNvbnN0IGZpeHVwUmlza0NvbmZpZ0RhdGEgPSAoZGF0YSk9PnsKICAgIGlmICh4KSB7CiAgICAgICAgcmV0dXJuIDEyMzsKICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIDQ1NjsKICAgIH0KfTsKCi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSnpiM1Z5WTJWeklqcGJJbWx1Y0hWMExuUnpJbDBzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSWk4cUtseHlYRzRnS2lCbWIyOWNjbHh1SUNvZ1FIQmhjbUZ0SUdSaGRHRWdabTl2WEhKY2JpQXFJRUJ5WlhSMWNtNXpJR1p2YjF4eVhHNGdLaTljY2x4dVpYaHdiM0owSUdOdmJuTjBJR1pwZUhWd1VtbHphME52Ym1acFowUmhkR0VnUFNBb1pHRjBZVG9nWVc1NUtUb2dkSGx3WlhNdVVtbHphME52Ym1acFoxUjVjR1VnUFQ0Z2UxeHlYRzRnSUdsbUlDaDRLU0I3WEhKY2JpQWdJQ0J5WlhSMWNtNGdNVEl6TzF4eVhHNGdJSDBnWld4elpTQjdYSEpjYmlBZ0lDQnlaWFIxY200Z05EVTJPMXh5WEc0Z0lIMWNjbHh1ZlRzaVhTd2libUZ0WlhNaU9sc2labWw0ZFhCU2FYTnJRMjl1Wm1sblJHRjBZU0lzSW1SaGRHRWlMQ0o0SWwwc0ltMWhjSEJwYm1keklqb2lRVUZCUVN4dFJFRkpReXhIUVVORUxFOUJRVThzVFVGQlRVRXNjMEpCUVhOQ0xFTkJRVU5ETEU5QlFXOURPMGxCUTNSRkxFbEJRVWxETEVkQlFVYzdVVUZEVEN4UFFVRlBPMGxCUTFRc1QwRkJUenRSUVVOTUxFOUJRVTg3U1VGRFZDeERRVUZETzBGQlEwZ3NSVUZCUlNKOTQ0NAB7InZlcnNpb24iOjMsInNvdXJjZXMiOlsiaW5wdXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIGZvb1xyXG4gKiBAcGFyYW0gZGF0YSBmb29cclxuICogQHJldHVybnMgZm9vXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgZml4dXBSaXNrQ29uZmlnRGF0YSA9IChkYXRhOiBhbnkpOiB0eXBlcy5SaXNrQ29uZmlnVHlwZSA9PiB7XHJcbiAgaWYgKHgpIHtcclxuICAgIHJldHVybiAxMjM7XHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiA0NTY7XHJcbiAgfVxyXG59OyJdLCJuYW1lcyI6WyJmaXh1cFJpc2tDb25maWdEYXRhIiwiZGF0YSIsIngiXSwibWFwcGluZ3MiOiJBQUFBLG1EQUlDLEdBQ0QsT0FBTyxNQUFNQSxzQkFBc0IsQ0FBQ0MsT0FBb0M7SUFDdEUsSUFBSUMsR0FBRztRQUNMLE9BQU87SUFDVCxPQUFPO1FBQ0wsT0FBTztJQUNULENBQUM7QUFDSCxFQUFFIn0=)
and
[after](https://evanw.github.io/source-map-visualization/#ODIyAC8qKgogKiBmb28KICogQHBhcmFtIGRhdGEgZm9vCiAqIEByZXR1cm5zIGZvbwogKi8gZXhwb3J0IHZhciBmaXh1cFJpc2tDb25maWdEYXRhID0gZnVuY3Rpb24oZGF0YSkgewogICAgaWYgKHgpIHsKICAgICAgICByZXR1cm4gMTIzOwogICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gNDU2OwogICAgfQp9OwoKLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKemIzVnlZMlZ6SWpwYklpNHZZWEJ3TG1weklsMHNJbk52ZFhKalpYTkRiMjUwWlc1MElqcGJJaThxS2x4eVhHNGdLaUJtYjI5Y2NseHVJQ29nUUhCaGNtRnRJR1JoZEdFZ1ptOXZYSEpjYmlBcUlFQnlaWFIxY201eklHWnZiMXh5WEc0Z0tpOWNjbHh1Wlhod2IzSjBJR052Ym5OMElHWnBlSFZ3VW1semEwTnZibVpwWjBSaGRHRWdQU0FvWkdGMFlUb2dZVzU1S1RvZ2RIbHdaWE11VW1semEwTnZibVpwWjFSNWNHVWdQVDRnZTF4eVhHNGdJR2xtSUNoNEtTQjdYSEpjYmlBZ0lDQnlaWFIxY200Z01USXpPMXh5WEc0Z0lIMGdaV3h6WlNCN1hISmNiaUFnSUNCeVpYUjFjbTRnTkRVMk8xeHlYRzRnSUgxY2NseHVmVHNpWFN3aWJtRnRaWE1pT2xzaVptbDRkWEJTYVhOclEyOXVabWxuUkdGMFlTSXNJbVJoZEdFaUxDSjRJbDBzSW0xaGNIQnBibWR6SWpvaVFVRkJRVHM3T3p0RFFVbERMRWRCUTBRc1QwRkJUeXhKUVVGTlFTeHpRa0ZCYzBJc1UwRkJRME1zVFVGQmIwTTdTVUZEZEVVc1NVRkJTVU1zUjBGQlJ6dFJRVU5NTEU5QlFVODdTVUZEVkN4UFFVRlBPMUZCUTB3c1QwRkJUenRKUVVOVUxFTkJRVU03UVVGRFNDeEZRVUZGSW4wPTQ0NgB7InZlcnNpb24iOjMsInNvdXJjZXMiOlsiLi9hcHAuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIGZvb1xyXG4gKiBAcGFyYW0gZGF0YSBmb29cclxuICogQHJldHVybnMgZm9vXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgZml4dXBSaXNrQ29uZmlnRGF0YSA9IChkYXRhOiBhbnkpOiB0eXBlcy5SaXNrQ29uZmlnVHlwZSA9PiB7XHJcbiAgaWYgKHgpIHtcclxuICAgIHJldHVybiAxMjM7XHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiA0NTY7XHJcbiAgfVxyXG59OyJdLCJuYW1lcyI6WyJmaXh1cFJpc2tDb25maWdEYXRhIiwiZGF0YSIsIngiXSwibWFwcGluZ3MiOiJBQUFBOzs7O0NBSUMsR0FDRCxPQUFPLElBQU1BLHNCQUFzQixTQUFDQyxNQUFvQztJQUN0RSxJQUFJQyxHQUFHO1FBQ0wsT0FBTztJQUNULE9BQU87UUFDTCxPQUFPO0lBQ1QsQ0FBQztBQUNILEVBQUUifQ==)


**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/6694.
2023-01-08 13:57:26 +09:00
SWC Bot
1161360d54 chore: Publish crates 2023-01-06 03:49:20 +00:00
SWC Bot
790c478a7a chore: Publish crates 2023-01-04 07:29:33 +00:00
SWC Bot
61245739ea chore: Publish crates 2022-12-21 03:03:05 +00:00
SWC Bot
913230d02a chore: Publish crates 2022-12-20 06:11:34 +00:00