David Sherret
bac1cb52a3
Add a take_all() method to Comments. ( #552 )
2020-01-02 13:21:43 +09:00
강동윤
702800e0d9
Attach comments to correct node ( #541 )
2019-12-28 22:02:58 +09:00
강동윤
b98f17b84d
Bump versions
2019-12-26 08:53:13 +09:00
David Sherret
32860576f2
Comment and TokenAndSpan - Implement Spanned ( #534 )
2019-12-26 08:35:43 +09:00
강동윤
31a5bed497
Legacy decorator for class and class members ( #531 )
2019-12-25 19:30:16 +09:00
강동윤
b1e4122b02
Nullish coalescing / optional chaining / comments ( #529 )
...
swc_ecma_ast:
- rename `TsOptChain` to `OptChainExpr` (Fixes #525 )
- add `BinOp::NullishCoalescing`
swc_ecma_parser:
- parse `??` (Fixes #526 )
swc_ecma_transforms:
- remap comments from fixer (Fixes #528 )
2019-12-24 17:01:32 +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
강동윤
332061f44d
Parser: respect jsc.target ( #507 )
...
swc:
- make parser respect `jsc.target`.
2019-12-14 18:51:08 +09:00
kdy1
3ec395ba75
Improve performance & update rustfmt ( #504 )
2019-12-13 06:21:25 +00:00
Zimon Dai
ec086a1dab
use 2018 edition syntax ( #479 )
2019-12-02 17:10:05 +09:00
강동윤
776e014a11
Fix tests ( #478 )
2019-12-01 18:11:59 +09:00
강동윤
0d5da173d2
Remove loc from span
2019-11-30 14:51:22 +09:00
강동윤
265eb9e30c
Improve performance of serialization and deserialization ( #475 )
2019-11-30 14:49:18 +09:00
강동윤
a7a8a4a2e4
Plugin ( #473 )
...
swc_common:
- apply patch from rust-lang/rust#59693
swc:
- use &Options instead of Options
- configures commons::CM
- exposes `handler`
2019-11-29 23:46:06 +09:00
강동윤
55b473b744
#[serde(transparent)] for SyntaxContext
2019-11-28 20:04:50 +09:00
강동윤
4ab510827a
Fix serde of BytePos
2019-11-28 19:55:14 +09:00
강동윤
b46c4ec300
Update dependencies ( #464 )
2019-11-24 14:17:27 +09:00
강동윤
7d4168f415
Parser performance ( #463 )
...
- Update string_cache from 0.7 to 0.8
- Update unicode_xid from 0.1 to 0.2
swc_ecma_parser:
- Add benchmarks for lexer
2019-11-23 23:03:19 +09:00
강동윤
d074063867
Parser: Error recovery ( #449 )
...
Implement some error recovery logic to parser
2019-11-17 18:36:47 +09:00
Jasper De Sutter
716bfe05b2
Cleanup ( #448 )
...
- cargo fix
- update all crates to 2018 edition
2019-11-17 13:21:53 +09:00
강동윤
167008de6f
Expose tokenizer ( #437 )
...
swc_common:
- Added input::Input
swc_ecma_parser:
- Made lexer public
- Make input type of parser generic
- Added example of using lexer
2019-11-06 13:14:44 +09:00
강동윤
ae3326cd9d
Compiler apis & .swcrc improvement ( #434 )
...
- Expose high-level compiler apis (#431 )
- Support multiple entries in .swcrc (#414 )
2019-10-25 10:11:24 +09:00
강동윤
9f1fca55ff
Update rustc toolchain to nightly-2019-09-30
2019-10-02 13:53:56 +09:00
강동윤
a1c2538338
hashbrown & comment revamp
2019-06-25 09:41:58 +09:00
강동윤
aa06bb7cc9
Bump version
2019-05-02 15:52:39 +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
강동윤
d3ff16d496
Emit location while serializing
2019-04-13 20:55:38 +09:00
강동윤
56be56acea
Fix lints
2019-04-11 21:01:29 +09:00
강동윤
ed100700f1
Make deserialization fast ( #314 )
...
swc_ecma_ast:
- add deserialization benchmark
ast_node:
- #[ast_node] on enum now implements faster deserialization
2019-03-05 23:16:45 +09:00
강동윤
74dc5582f1
Don't inject @swc/helpers if nothing is used
2019-02-27 18:31:30 +09:00
강동윤
1e38d2e124
Handle sourcemap correctly
2019-02-27 17:44:11 +09:00
강동윤
10cb9a4b21
Publish ( #278 )
...
- swc_macros_common@0.2.0
- ast_node@0.4.1
- string_enum @0.2.0
- swc_ecma_ast@0.8.0
- swc_ecma_parser_macros@0.3.0
- swc_ecma_codegen_macros@0.3.0
- swc_ecma_parser@0.9.1
- swc_ecma_parser@0.6.1
2019-02-27 10:42:22 +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
강동윤
33ab0db712
Fix travis ( #222 )
...
swc_common:
- ignore copied doctests
swc_ecma_transforms:
- fox some tests
2019-02-16 18:58:29 +09:00
강동윤
17d87e3ce5
Remove println
2019-02-12 22:09:41 +09:00
강동윤
7fe2245a3d
Cleanup ( #152 )
...
- replace Lrc with std::sync::Arc
swc_common:
- make swc_common::sync private
- improve MoveMap
swc_ecma_codegen:
- fix codegen of import.
swc_ecma_transforms:
- properly detect valid identifier.
swc_ecma_parser:
- Fix parsing of cond expr inside paren.
2019-02-11 11:39:20 +09:00
강동윤
3b8d36dc58
Parse dynamic imports
2019-02-10 12:07:40 +09:00
강동윤
654f55b658
Closes #137 , Closes #138
2019-02-09 12:19:20 +09:00
강동윤
04699ea3a4
Allow using same filename multiple time ( #139 )
2019-02-09 10:51:03 +09:00
강동윤
43d633b44d
Handle comments and improve codegen ( #136 )
...
swc_ecma_codegen:
- Improve codegen
- Handle comments
swc_ecma_parser:
- Handle comments
2019-02-08 13:00:58 +09:00
강동윤
b516c19133
Update dependencies ( #135 )
2019-02-07 00:05:25 +09:00
강동윤
a1629d3997
Implement module transforms ( #133 )
...
swc_ecma_ast:
- implement more `From<T>` for `Expr`
swc_ecma_transforms:
- fnv -> fxhash
- implement common js imports
- improve fixer
- use js_word! instead of &*sym
- add noop pass
- handle state correctly
- ExprFactory::member(), computed_member()
2019-02-05 12:50:19 +09:00
강동윤
c648232864
Classes improvements ( #123 )
...
Now swc passes all tests from `@babel/plugin-transform-classes`
2019-01-24 16:07:09 +09:00
강동윤
29c5faed9b
Remove usage of nightly features
2019-01-18 10:26:04 +09:00
강동윤
eebf14fbef
Allow stable rust ( #118 )
...
This pr introduces some cargo features. For `swc_common` and `swc_ecma_ast`, it introduces a feature flag `fold`.
`Fold` and `Visit` traits exist only if the feature is enabled.
For `swc_ecma_parser`, flag called `verify` is added. When disabled, we skip checking of validity of some expressions.
e.g. `{foo = bar}`
Verification is disabled by default it requires nightly compiler
2019-01-17 23:17:16 +09:00
강동윤
66eab1bc85
enable
flag for the simplifier pass
2019-01-15 10:59:40 +09:00
강동윤
c361ef560d
Re-depend on rustc-ap-rustc_data_structures
2019-01-14 22:02:11 +09:00
강동윤
d4fefa8615
Reduce binary size ( #116 )
...
- remove unused debug impls
2019-01-10 18:23:25 +09:00
강동윤
fc3a9d6180
.swcrc file for configuration ( #115 )
...
libswc:
- use config file
2019-01-08 16:34:35 +09:00