aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add test for match_astEdwin Cheng2019-11-211-0/+43
|
* Add to_macro_file_kindEdwin Cheng2019-11-211-2/+38
|
* Add MacroFileKind::StatementsEdwin Cheng2019-11-212-0/+2
|
* Merge #2341bors[bot]2019-11-211-0/+68
|\ | | | | | | | | | | | | | | 2341: Fix mbe fail to parse TokenTree with endings whitespace r=matklad a=edwin0cheng Co-authored-by: Edwin Cheng <[email protected]>
| * Fixed mbe trival subtreeEdwin Cheng2019-11-211-0/+68
| |
* | Merge #2340bors[bot]2019-11-212-2/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | 2340: Fix test mark placement r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | Fix test mark placementAleksey Kladov2019-11-212-2/+2
| | |
* | | Merge #2339bors[bot]2019-11-211-30/+11
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2339: Update crates r=matklad a=kjeremy Removes duplicate crossbeam crates. Co-authored-by: Jeremy Kolb <[email protected]>
| * | | Update cratesJeremy Kolb2019-11-211-30/+11
| | |/ | |/|
* | | Merge #2338bors[bot]2019-11-2112-181/+139
|\ \ \ | |/ / |/| / | |/ | | | | | | | | 2338: Remove old hir::generics module r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * reformatAleksey Kladov2019-11-212-5/+4
| |
| * Remove old hir::generics moduleAleksey Kladov2019-11-2111-114/+94
| |
| * Reduce visibilityAleksey Kladov2019-11-211-41/+37
| |
| * ResimplifyAleksey Kladov2019-11-211-23/+6
| |
* | Merge #2337bors[bot]2019-11-2119-327/+493
|\| | | | | | | | | | | | | | | 2337: Move resolver to hir_def r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Restore a markAleksey Kladov2019-11-213-1/+20
| |
| * Move resolver to hir_defAleksey Kladov2019-11-2114-77/+63
| |
| * DecoupleAleksey Kladov2019-11-218-49/+53
| |
| * Split internal and user-visible ScopeDefAleksey Kladov2019-11-212-17/+40
| |
| * Use GenericParam in ScopeDefAleksey Kladov2019-11-212-4/+10
| |
| * Move ScopeDefAleksey Kladov2019-11-214-31/+31
| |
| * DecoupleAleksey Kladov2019-11-216-75/+105
| |
| * DecoupleAleksey Kladov2019-11-215-43/+59
| |
| * Move expr resolver to resolveAleksey Kladov2019-11-214-33/+35
| |
| * Decouple ResolverAleksey Kladov2019-11-2110-108/+188
|/
* Merge #2336bors[bot]2019-11-201-3/+3
|\ | | | | | | | | | | | | | | 2336: Remove npm.cmd r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Remove npm.cmdAleksey Kladov2019-11-201-3/+3
|/ | | | I *think* this is more correct
* Merge #2334bors[bot]2019-11-202-1/+29
|\ | | | | | | | | | | | | | | 2334: Add rust-analyzer-expand-macro function for Emacs r=flodiebold a=flodiebold Co-authored-by: Florian Diebold <[email protected]>
| * Add rust-analyzer-expand-macro function for EmacsFlorian Diebold2019-11-202-1/+29
|/
* Merge #2332bors[bot]2019-11-2010-141/+127
|\ | | | | | | | | | | | | | | 2332: Add HasResolver trait r=matklad a=matklad bors merge Co-authored-by: Aleksey Kladov <[email protected]>
| * Alternative quite tests aliasAleksey Kladov2019-11-201-0/+1
| |
| * SimplifyAleksey Kladov2019-11-202-41/+15
| |
| * Add HasResolver traitAleksey Kladov2019-11-209-134/+145
| |
* | Merge #2330bors[bot]2019-11-209-105/+81
|\| | | | | | | | | | | | | | | 2330: Remove hir/adt.rs r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Remove hir/adt.rsAleksey Kladov2019-11-206-66/+47
| |
| * Simplify generic paramsAleksey Kladov2019-11-204-39/+34
| |
* | Merge #2329bors[bot]2019-11-203-5/+58
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <[email protected]>
| * | fix 2190; add test for "replace if let with match"Felix Kohlgrüber2019-11-203-5/+58
|/ /
* | Merge #2328bors[bot]2019-11-204-27/+37
|\| | | | | | | | | | | | | | | 2328: Move generic_params query to HIR r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Move generic_params query to HIRAleksey Kladov2019-11-204-27/+37
|/
* Merge #2327bors[bot]2019-11-2017-175/+287
|\ | | | | | | | | | | | | | | 2327: Move constants to new ID r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Move constants to new IDAleksey Kladov2019-11-2016-89/+119
| | | | | | | | This allows us to get rid of trait item index
| * Don't duplicate ContainerId typeAleksey Kladov2019-11-205-42/+35
| |
| * Switch type aliases to new sourcesAleksey Kladov2019-11-209-73/+162
|/
* Merge #2326bors[bot]2019-11-201-132/+0
|\ | | | | | | | | | | | | | | 2326: Remove duplicate tests r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Remove duplicate testsAleksey Kladov2019-11-201-132/+0
| |
* | Merge #2318bors[bot]2019-11-203-9/+16
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <[email protected]>
| * | Fix expand macroEdwin Cheng2019-11-203-9/+16
|/ /
* | Merge #2325bors[bot]2019-11-2012-42/+190
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <[email protected]>
| * | Next gen IDs for functionsAleksey Kladov2019-11-2012-42/+190
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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