Edwin Cheng
144dc6652c
Fix insert_whitespaces
2019-11-22 02:38:14 +08:00
Edwin Cheng
67a58e4af1
Add test for match_ast
2019-11-22 02:38:14 +08:00
Edwin Cheng
59e7234546
Add to_macro_file_kind
2019-11-22 02:38:14 +08:00
Edwin Cheng
4ff400833f
Add MacroFileKind::Statements
2019-11-22 02:38:14 +08:00
bors[bot]
3f1a0c3c5f
Merge #2341
...
2341: Fix mbe fail to parse TokenTree with endings whitespace r=matklad a=edwin0cheng
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2019-11-21 17:56:12 +00:00
Edwin Cheng
bf537eefb5
Fixed mbe trival subtree
2019-11-22 01:02:07 +08:00
bors[bot]
d0a9ed50da
Merge #2340
...
2340: Fix test mark placement r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-21 14:10:14 +00:00
Aleksey Kladov
a1346bba5c
Fix test mark placement
2019-11-21 17:09:38 +03:00
bors[bot]
8c2eee4ede
Merge #2339
...
2339: Update crates r=matklad a=kjeremy
Removes duplicate crossbeam crates.
Co-authored-by: Jeremy Kolb <kjeremy@gmail.com>
2019-11-21 13:46:16 +00:00
Jeremy Kolb
aa20740944
Update crates
2019-11-21 08:40:33 -05:00
bors[bot]
0630bbabfc
Merge #2338
...
2338: Remove old hir::generics module r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-21 13:32:40 +00:00
Aleksey Kladov
952405cb41
reformat
2019-11-21 16:31:48 +03:00
Aleksey Kladov
4daf931111
Remove old hir::generics module
2019-11-21 16:23:02 +03:00
Aleksey Kladov
4f8f3393bc
Reduce visibility
2019-11-21 16:00:57 +03:00
Aleksey Kladov
36758f2767
Resimplify
2019-11-21 15:56:27 +03:00
bors[bot]
1f61915bde
Merge #2337
...
2337: Move resolver to hir_def r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-21 12:50:12 +00:00
Aleksey Kladov
c37d1c5b38
Restore a mark
2019-11-21 15:49:24 +03:00
Aleksey Kladov
6d64798a23
Move resolver to hir_def
2019-11-21 15:39:09 +03:00
Aleksey Kladov
00684d708b
Decouple
2019-11-21 15:24:51 +03:00
Aleksey Kladov
eb53aa37a3
Split internal and user-visible ScopeDef
2019-11-21 15:13:46 +03:00
Aleksey Kladov
ca1af86e7b
Use GenericParam in ScopeDef
2019-11-21 14:22:30 +03:00
Aleksey Kladov
1312c57d34
Move ScopeDef
2019-11-21 14:21:26 +03:00
Aleksey Kladov
061e6c77b5
Decouple
2019-11-21 14:13:49 +03:00
Aleksey Kladov
621cf06156
Decouple
2019-11-21 13:48:05 +03:00
Aleksey Kladov
24964ca58e
Move expr resolver to resolve
2019-11-21 13:28:04 +03:00
Aleksey Kladov
0102fb4133
Decouple Resolver
2019-11-21 13:25:03 +03:00
bors[bot]
612a72fc4e
Merge #2336
...
2336: Remove npm.cmd r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-20 20:28:00 +00:00
Aleksey Kladov
ad2b6cad48
Remove npm.cmd
...
I *think* this is more correct
2019-11-20 23:27:03 +03:00
bors[bot]
a025303ca6
Merge #2334
...
2334: Add rust-analyzer-expand-macro function for Emacs r=flodiebold a=flodiebold
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2019-11-20 19:45:57 +00:00
Florian Diebold
c079d9b63b
Add rust-analyzer-expand-macro function for Emacs
2019-11-20 20:45:25 +01:00
bors[bot]
2cb2fb1a48
Merge #2332
...
2332: Add HasResolver trait r=matklad a=matklad
bors merge
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-20 19:23:31 +00:00
Aleksey Kladov
63f327be67
Alternative quite tests alias
2019-11-20 22:22:32 +03:00
Aleksey Kladov
1cead41510
Simplify
2019-11-20 22:22:32 +03:00
Aleksey Kladov
6241cf9a59
Add HasResolver trait
2019-11-20 22:22:32 +03:00
bors[bot]
6983afdea9
Merge #2330
...
2330: Remove hir/adt.rs r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-20 18:38:00 +00:00
Aleksey Kladov
7c275a7ed2
Remove hir/adt.rs
2019-11-20 21:34:12 +03:00
bors[bot]
5aec3e4a7b
Merge #2329
...
2329: fix 2190; add test for "replace if let with match" r=matklad a=fkohlgrueber
Fixes #2190 .
Check that the expression doesn't contain newlines only for "replace if let with match". For "join lines", enclosing blocks for multiline expressions should be removed.
Co-authored-by: Felix Kohlgrüber <felix.kohlgrueber@gmail.com>
2019-11-20 18:16:35 +00:00
Felix Kohlgrüber
bcb2ea912b
fix 2190; add test for "replace if let with match"
2019-11-20 19:01:06 +01:00
Aleksey Kladov
12ec946216
Simplify generic params
2019-11-20 20:50:34 +03:00
bors[bot]
7a5fd1f3f3
Merge #2328
...
2328: Move generic_params query to HIR r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-20 17:39:00 +00:00
Aleksey Kladov
cb642fc578
Move generic_params query to HIR
2019-11-20 20:38:37 +03:00
bors[bot]
c51dcb1c4b
Merge #2327
...
2327: Move constants to new ID r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-20 15:45:22 +00:00
Aleksey Kladov
111891dc2d
Move constants to new ID
...
This allows us to get rid of trait item index
2019-11-20 18:41:23 +03:00
Aleksey Kladov
ee95a35664
Don't duplicate ContainerId type
2019-11-20 17:50:02 +03:00
Aleksey Kladov
64c21ed195
Switch type aliases to new sources
2019-11-20 17:43:03 +03:00
bors[bot]
b7a36b5443
Merge #2326
...
2326: Remove duplicate tests r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-20 13:43:34 +00:00
Aleksey Kladov
3888487ca8
Remove duplicate tests
2019-11-20 16:40:25 +03:00
bors[bot]
4ef9cab41a
Merge #2318
...
2318: Fix panic when use `Expand Macro` on `assert_eq` r=matklad a=edwin0cheng
The cause of this [bug](https://github.com/rust-analyzer/rust-analyzer/pull/2291#issuecomment-555651542 ) is, when calling `SourceAnalyzer::expand` when an `ast::MacroCall` which is outside of `SourceAnalyzer::node`.
Note that if we use a node in `SourceAnalyzer::new` with a `MacroFile` file id, the resolver inside `SourceAnalyzer` still will not work properly. Another PR will need to fix it.
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2019-11-20 13:36:19 +00:00
Edwin Cheng
0a9c80053f
Fix expand macro
2019-11-20 21:33:01 +08:00
bors[bot]
b568bcfe6d
Merge #2325
...
2325: Next gen IDs for functions r=matklad a=matklad
The current system with AstIds has two primaraly drawbacks:
* It is possible to manufacture IDs out of thin air.
For example, it's possible to create IDs for items which are not
considered in CrateDefMap due to cfg. Or it is possible to mixup
structs and unions, because they share ID space.
* Getting the ID of a parent requires a secondary index.
Instead, the plan is to pursue the more traditional approach, where
each items stores the id of the parent declaration. This makes
`FromSource` more awkward, but also more correct: now, to get from an
AST to HIR, we first do this recursively for the parent item, and the
just search the children of the parent for the matching def
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-20 13:23:38 +00:00