aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge #1501bors[bot]2019-07-075-35/+170
|\ | | | | | | | | | | | | | | 1501: Infer for loop variable r=flodiebold a=unrealhoang My take on https://github.com/rust-analyzer/rust-analyzer/issues/1425 Co-authored-by: Unreal Hoang <[email protected]>
| * add projection to infer for loop variableUnreal Hoang2019-07-075-35/+170
| |
* | Merge #1499bors[bot]2019-07-076-108/+240
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | 1499: processing attribute #[path] of module r=matklad a=andreevlex support two cases - simple name file `foo.rs` - declaration in mod.rs #1211 Co-authored-by: Alexander Andreev <[email protected]>
| * Moved module resolution test in mods.rsAlexander Andreev2019-07-074-193/+195
| |
| * Added support attribute path in resolusion module fnAlexander Andreev2019-07-062-5/+119
| |
| * Added extract path attribute for current moduleAlexander Andreev2019-07-063-6/+22
| | | | | | | | #1211
* | Make EnumVariant a GenericDef and simplify some codeFlorian Diebold2019-07-064-14/+21
| |
* | Add trait obligations for where clauses when calling functions/methodsFlorian Diebold2019-07-067-34/+156
|/ | | | | E.g. if we call `foo<T: Into<u32>>(x)`, that adds an obligation that `x: Into<u32>`, etc.
* Merge #1495bors[bot]2019-07-051-1/+17
|\ | | | | | | | | | | | | | | 1495: use correct file for diagnostics r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * use correct file for diagnosticsAleksey Kladov2019-07-051-1/+17
| | | | | | | | closes #1475
* | Merge #1494bors[bot]2019-07-051-1/+6
|\| | | | | | | | | | | | | | | 1494: properly restrict diagnostics to a single file r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * properly restrict diagnostics to a single fileAleksey Kladov2019-07-051-1/+6
| |
* | Clippy trivially_copy_pass_by_refJeremy Kolb2019-07-057-17/+17
|/
* Merge #1491bors[bot]2019-07-052-17/+17
|\ | | | | | | | | | | | | | | | | | | 1491: More clippy r=matklad a=kjeremy A few more clippy changes. I'm a little unsure of the second commit. It's the trivially_copy_pass_by_ref lint and there are a number of places in the code we could use it if it makes sense. Co-authored-by: Jeremy Kolb <[email protected]>
| * &self -> selfJeremy Kolb2019-07-051-13/+13
| | | | | | | | https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref
| * Clippy changesJeremy Kolb2019-07-052-4/+4
| |
* | Fix clippy::redundant_cloneShotaro Yamada2019-07-052-3/+2
|/
* Some clippy fixes for 1.36Jeremy Kolb2019-07-049-30/+24
|
* Merge #1486bors[bot]2019-07-0435-240/+267
|\ | | | | | | | | | | | | | | 1486: allow rustfmt to reorder imports r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * allow rustfmt to reorder importsAleksey Kladov2019-07-0435-240/+267
| | | | | | | | | | | | This wasn't a right decision in the first place, the feature flag was broken in the last rustfmt release, and syntax highlighting of imports is more important anyway
* | Fixed request changesAlexander Andreev2019-07-032-6/+5
| |
* | Move resolve raw name in name.rsAlexander Andreev2019-07-033-11/+40
| | | | | | | | Added test for check module resolution with raw name
* | Added resolve submodules with raw nameAlexander Andreev2019-07-031-0/+9
|/ | | | #1211
* Add completion for type aliasesShotaro Yamada2019-07-021-0/+4
|
* put source maps first for better statsAleksey Kladov2019-06-301-6/+6
|
* print memory usage for queriesAleksey Kladov2019-06-301-0/+4
|
* Complete associated methods on enums (and unions) as wellFlorian Diebold2019-06-291-0/+4
|
* make sure that CrateDefMap is independent from syntaxAleksey Kladov2019-06-266-48/+54
|
* cache chalk queriesAleksey Kladov2019-06-263-194/+240
| | | | | | | | | | | | | | | | | | | | | | | | | | | This gives a significant speedup, because chalk will call these functions several times even withing a single revision. The only significant one here is `impl_data`, but I figured it might be good to cache others just for consistency. The results I get are: Before: from scratch: 16.081457952s no change: 15.846493ms trivial change: 352.95592ms comment change: 361.998408ms const change: 457.629212ms After: from scratch: 14.910610278s no change: 14.934647ms trivial change: 85.633023ms comment change: 96.433023ms const change: 171.543296ms Seems like a nice win!
* Add commentShotaro Yamada2019-06-251-6/+8
|
* Method resolution for slicesShotaro Yamada2019-06-241-25/+36
|
* Add firewall query to lang itemsAleksey Kladov2019-06-193-17/+38
| | | | | With an intermediate query, changing one module won't cause reparsing of all modules
* rename XSignature -> XDataAleksey Kladov2019-06-186-59/+55
|
* Add test for autoderef infinite recursionFlorian Diebold2019-06-161-0/+25
|
* Simplifications / cleanup from reviewFlorian Diebold2019-06-167-38/+31
|
* Some more cleanupFlorian Diebold2019-06-151-4/+4
|
* Check that Deref has the right number of parametersFlorian Diebold2019-06-151-2/+7
|
* Somewhat handle variables in the derefed type, and add another testFlorian Diebold2019-06-153-5/+61
|
* Implement * operation using Deref traitFlorian Diebold2019-06-151-3/+5
|
* Implement autoderef using the Deref traitFlorian Diebold2019-06-158-44/+149
| | | | - add support for other lang item targets, since we need the Deref lang item
* Add basic infrastructure for assoc type projectionFlorian Diebold2019-06-157-21/+188
|
* Add test for DerefFlorian Diebold2019-06-151-0/+29
|
* check for cancellation when executing queriesAleksey Kladov2019-06-124-4/+0
| | | | | | | Note that we can't just remove CheckCanceled trait altogether: sometimes it's useful to check for cancellation while the query is running! We do this, for example, in the name resolution fixed-point loop.
* move docs under code modelAleksey Kladov2019-06-114-4/+4
|
* fix compilationAleksey Kladov2019-06-111-1/+1
|
* minor formattingAleksey Kladov2019-06-111-4/+0
|
* remove unneded From(..) implAleksey Kladov2019-06-114-37/+21
|
* move source to a seaparate fileAleksey Kladov2019-06-113-121/+125
|
* remove inherent source implsAleksey Kladov2019-06-119-57/+11
|
* use Source for module, part 2Aleksey Kladov2019-06-112-3/+3
|