aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge #968bors[bot]2019-03-1736-1954/+2053
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 968: Macro aware name resoltion r=matklad a=matklad The first commit lays the ground work for new name resolution, including * extracting position-indendent items from parse trees * walking the tree of modules * old-style macro_rules resolve cc @pnkfelix: this looks like an API name resolution should interact with. Co-authored-by: Aleksey Kladov <[email protected]>
| * docsAleksey Kladov2019-03-171-9/+15
| |
| * remove fixmeAleksey Kladov2019-03-171-2/+1
| |
| * remove old macro supportAleksey Kladov2019-03-178-261/+95
| |
| * rename ModuleId -> CrateModuleIdAleksey Kladov2019-03-178-39/+40
| |
| * fix error on wrong pathAleksey Kladov2019-03-174-12/+43
| |
| * log timeAleksey Kladov2019-03-171-0/+2
| |
| * Reorganize name resolutionAleksey Kladov2019-03-1714-522/+481
| |
| * hack around non-terminating macro expansionAleksey Kladov2019-03-171-0/+14
| |
| * remove lower moduleAleksey Kladov2019-03-1712-264/+48
| |
| * remove ItemMapAleksey Kladov2019-03-177-569/+59
| |
| * move tests over to crate-def-mapAleksey Kladov2019-03-179-850/+689
| |
| * Replace module_tree with CrateDefMapAleksey Kladov2019-03-1716-511/+333
| |
| * add name resolution from the old implAleksey Kladov2019-03-179-185/+739
| | | | | | | | unlike the old impl, this also handles macro imports across crates
| * add skeleton for macro-aware name resolutionsAleksey Kladov2019-03-178-9/+773
|/
* Merge #947bors[bot]2019-03-172-0/+285
|\ | | | | | | | | | | | | | | | | | | | | | | 947: Add missing impl members r=matklad a=Xanewok Closes #878. This took longer than expected as I wrapped my head around the API and the project - hopefully I didn't miss any edge case here. r? @matklad Co-authored-by: Igor Matuszewski <[email protected]>
| * Move the primary assist fn to the top of the fileIgor Matuszewski2019-03-161-30/+30
| |
| * Provide assist when cursor is immediately outside impl item blockIgor Matuszewski2019-03-161-14/+18
| |
| * Do a cleanup/legibility passIgor Matuszewski2019-03-161-21/+21
| |
| * Take into account parent indent when filling trait membersIgor Matuszewski2019-03-161-9/+41
| |
| * Simplify trait resolution fragmentIgor Matuszewski2019-03-161-6/+3
| |
| * Ignore unnamed trait fns and add more testsIgor Matuszewski2019-03-161-2/+70
| |
| * Simplify calculation of missing functionsIgor Matuszewski2019-03-161-9/+2
| | | | | | | | | | | | Asymptotically computing a set difference is faster but in the average case we won't have more than ~10 functions. Also prefer not using hash sets as these may yield nondeterministic results.
| * Properly support the case when the cursor is inside an empty block or outsideIgor Matuszewski2019-03-161-15/+44
| |
| * Redo indent calculation when adding missing impl membersIgor Matuszewski2019-03-161-9/+21
| |
| * Implement a simple working assistIgor Matuszewski2019-03-161-13/+59
| |
| * Calculate missing functions from impl bodyIgor Matuszewski2019-03-161-1/+62
| |
| * Add 'add_missing_impl_members' assist stubIgor Matuszewski2019-03-162-0/+43
|/
* Merge #981bors[bot]2019-03-165-120/+157
|\ | | | | | | | | | | | | | | | | 981: Remove FnSig from FnDef type r=matklad a=flodiebold It doesn't need to be in there since it's just information from the def. Another step towards aligning Ty with Chalk's representation. Co-authored-by: Florian Diebold <[email protected]>
| * Remove FnSig from FnDef typeFlorian Diebold2019-03-164-21/+26
| | | | | | | | | | It doesn't need to be in there since it's just information from the def. Another step towards aligning Ty with Chalk's representation.
| * Refactor FnSig a bitFlorian Diebold2019-03-163-70/+104
| |
| * Some more Ty displaying cleanupFlorian Diebold2019-03-162-35/+33
|/
* Merge #976bors[bot]2019-03-167-60/+136
|\ | | | | | | | | | | | | | | | | | | | | 976: Replace Display by a pretty printing trait for Ty r=matklad a=flodiebold This allows removing the names from Adt and FnDef (and more later), as a first step towards aligning more with chalk's Ty :) I may have gone a bit overboard with the definition of the PrettyPrint trait... Co-authored-by: Florian Diebold <[email protected]>
| * Replace Display by a pretty printing trait for TyFlorian Diebold2019-03-167-60/+136
| | | | | | | | | | This allows removing the names from Adt and FnDef (and more later), as a first step towards aligning more with chalk's Ty :)
* | Merge #978bors[bot]2019-03-151-16/+16
|\ \ | | | | | | | | | | | | | | | | | | | | | 978: Update some dependencies r=matklad a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * | Update some dependencieskjeremy2019-03-151-16/+16
|/ /
* | Merge #977bors[bot]2019-03-151-5/+4
|\ \ | |/ |/| | | | | | | | | | | 977: Fix ra-emacs-lsp for newest lsp-mode with native json support r=matklad a=flodiebold Co-authored-by: Florian Diebold <[email protected]>
| * Fix ra-emacs-lsp for newest lsp-mode with native json supportFlorian Diebold2019-03-141-5/+4
|/
* Merge #975bors[bot]2019-03-141-1/+2
|\ | | | | | | | | | | | | | | 975: sort navigations to make tests stable r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * sort navigations to make tests stableAleksey Kladov2019-03-141-1/+2
|/
* Merge #974bors[bot]2019-03-143-1/+348
|\ | | | | | | | | | | | | | | 974: Add MINUS token the PATTERN_FIRST token set r=matklad a=mchesser Fixes: #972 Co-authored-by: Michael Chesser <[email protected]>
| * Add test for minus in inner patternMichael Chesser2019-03-142-0/+347
| |
| * Allow MINUS at the start of a pattern.Michael Chesser2019-03-141-1/+1
|/
* Merge #973bors[bot]2019-03-141-1/+1
|\ | | | | | | | | | | | | | | 973: derive Hash for ra_hir::ModuleDef r=matklad a=pcpthm I wanted to use `HashSet` but it seems like `Hash` derive is missing for no reason. Co-authored-by: pcpthm <[email protected]>
| * derive Hash for ra_hir::ModuleDefpcpthm2019-03-141-1/+1
|/
* Merge #971bors[bot]2019-03-141-2/+3
|\ | | | | | | | | | | | | | | 971: Point to compiler-team repo in the readme r=matklad a=detrumi The readme still links to the old repo, which redirects to the new one Co-authored-by: Wilco Kusee <[email protected]>
| * Point to the compiler-team repo directlyWilco Kusee2019-03-131-2/+3
|/
* Merge #970bors[bot]2019-03-131-1/+1
|\ | | | | | | | | | | | | | | 970: Fix typo r=matklad a=skade Co-authored-by: Florian Gilcher <[email protected]>
| * Fix typoFlorian Gilcher2019-03-131-1/+1
|/
* Merge #969bors[bot]2019-03-131-1/+2
|\ | | | | | | | | | | | | | | 969: activate extension if Cargo.toml is present r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>