aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_ide_db
Commit message (Collapse)AuthorAgeFilesLines
* Merge #4689bors[bot]2020-06-051-0/+1
|\ | | | | | | | | | | | | | | | | | | | | 4689: Implement return position impl trait / opaque type support r=matklad a=flodiebold This is working, but I'm not that happy with how the lowering works. We might need an additional representation between `TypeRef` and `Ty` where names are resolved and `impl Trait` bounds are separated out, but things like inference variables don't exist and `impl Trait` is always represented the same way. Also note that this doesn't implement correct handling of RPIT *inside* the function (which involves turning the `impl Trait`s into variables and creating obligations for them). That intermediate representation might help there as well. Co-authored-by: Florian Diebold <[email protected]> Co-authored-by: Florian Diebold <[email protected]>
| * Review fixesFlorian Diebold2020-06-051-0/+1
| |
* | Merge #4760bors[bot]2020-06-051-9/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4760: Minimize FileLoader interface r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Minimize FileLoader interfaceAleksey Kladov2020-06-051-9/+2
| |/
| |
| \
*-. \ Merge #4729 #4748bors[bot]2020-06-052-1/+2
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4729: Hover actions r=matklad a=vsrs This PR adds a `hoverActions` LSP extension and a `Go to Implementations` action as an example: ![hover_actions_impl](https://user-images.githubusercontent.com/62505555/83335732-6d9de280-a2b7-11ea-8cc3-75253d062fe0.gif) 4748: Add an `ImportMap` and use it to resolve item paths in `find_path` r=matklad a=jonas-schievink Removes the "go faster" queries I added in https://github.com/rust-analyzer/rust-analyzer/pull/4501 and https://github.com/rust-analyzer/rust-analyzer/pull/4506. I've checked this PR on the rustc code base and the assists are still fast. This should fix https://github.com/rust-analyzer/rust-analyzer/issues/4515. Note that this does introduce a change in behavior: We now always refer to items defined in external crates using paths through the external crate. Previously we could also use a local path (if for example the extern crate was reexported locally), as seen in the changed test. If that is undesired I can fix that, but the test didn't say why the previous behavior would be preferable. Co-authored-by: vsrs <[email protected]> Co-authored-by: Jonas Schievink <[email protected]> Co-authored-by: Jonas Schievink <[email protected]>
| | * Measure memory usage of ImportMapJonas Schievink2020-06-051-0/+1
| | |
| * | Add hover actions as LSP extensionvsrs2020-06-051-1/+1
| |/
* | More direct signature for resolve_pathAleksey Kladov2020-06-051-2/+2
| |
* | Rename resolve_relative_path -> resolve_pathAleksey Kladov2020-06-051-6/+2
|/ | | | For things like `concant!(env!("OUT_DIR"))`, we need to support abs paths
* recursively search submodulesBrennan Vincent2020-05-311-18/+22
|
* Generate features docs from sourceAleksey Kladov2020-05-311-0/+21
|
* KISS SourceChangeAleksey Kladov2020-05-221-59/+20
| | | | | | The idea behind requiring the label is a noble one, but we are not really using it consistently anyway, and it should be easy to retrofit later, should we need it.
* Remove dead code for handling cursor positionsAleksey Kladov2020-05-213-321/+1
|
* Remove unused cursor positionsAleksey Kladov2020-05-211-3/+2
|
* Remove cross-crate marksAleksey Kladov2020-05-204-23/+2
| | | | | They create quite a bit of friction. Really, we should just move the tests to the same crate, rather than paper over existing split.
* Add AssistConfigAleksey Kladov2020-05-191-0/+5
|
* New definition_visibility methodFedor Sakharov2020-05-111-13/+2
|
* Also for consts and type aliasesFedor Sakharov2020-05-111-0/+2
|
* Find references to a function outside moduleFedor Sakharov2020-05-111-0/+1
|
* Remove HasVisibility implementationFedor Sakharov2020-05-071-2/+5
|
* Fix rename of enum variant visible from moduleFedor Sakharov2020-05-061-1/+4
|
* Use SourceChange for assistsAleksey Kladov2020-05-061-3/+3
|
* Lift SourceChange to the ra_ide_dbAleksey Kladov2020-05-062-0/+121
|
* Rename AtomTextEdit -> IndelAleksey Kladov2020-05-051-3/+3
|
* Fix column conversion for supplementary plane charactersLaurențiu Nicola2020-05-051-2/+15
|
* refactor: use parent instead ancestors for use aliasBenjamin Coenen2020-05-041-1/+1
| | | | Signed-off-by: Benjamin Coenen <[email protected]>
* Merge #4269 #4293bors[bot]2020-05-042-0/+11
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4269: add support of use alias semantic in definition r=matklad a=bnjjj close #4202 4293: no doctests for flycheck r=matklad a=matklad bors r+ 🤖 Co-authored-by: Benjamin Coenen <[email protected]> Co-authored-by: Aleksey Kladov <[email protected]>
| * add support of use alias semantic in definition #4202Benjamin Coenen2020-05-021-5/+9
| | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * wipBenjamin Coenen2020-05-012-1/+8
| | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
* | Don't count start of non-ASCII characters as being inside of themLaurențiu Nicola2020-05-031-3/+9
|/
* Rename StructField -> FieldAleksey Kladov2020-04-252-17/+17
|
* Switch to TryFromAleksey Kladov2020-04-253-17/+20
|
* CleanupsAleksey Kladov2020-04-252-15/+12
|
* Convert code to text-sizeAleksey Kladov2020-04-253-56/+55
|
* Remove SyntaxPtr::range from more placesAleksey Kladov2020-04-231-0/+2
|
* Fix goto definition for record patternsAleksey Kladov2020-04-182-0/+10
|
* Don't expose SyntaxNodePtr impl detailsAleksey Kladov2020-04-161-1/+3
|
* Make records grammar more orthogonalAleksey Kladov2020-04-111-1/+1
| | | | | | | | | | | | We used name [: expr] grammar before, now it is [name :] expr which makes things simpler
* Fix unnecessary braces warningsLaurențiu Nicola2020-04-062-9/+9
|
* Reload only the properties that do not affect vfsKirill Bulatov2020-03-301-4/+8
|
* Cleanup memory usage statsAleksey Kladov2020-03-251-2/+10
|
* Use visibility_of in searchEdwin Cheng2020-03-241-35/+31
|
* Add ItemScope::visibility_ofEdwin Cheng2020-03-241-23/+8
|
* Use more generic public apiKirill Bulatov2020-03-242-2/+9
|
* Auto import macrosKirill Bulatov2020-03-241-6/+2
|
* Merge pull request #3678 from edwin0cheng/refactor-renameAleksey Kladov2020-03-231-16/+4
|\ | | | | Fix rename argument in macro call
| * Refactor searchEdwin Cheng2020-03-221-16/+4
| |
* | Add support for macro in symbo_indexEdwin Cheng2020-03-221-0/+7
|/
* Use `dyn Trait` for working with databseAleksey Kladov2020-03-161-1/+14
| | | | | | | It improves compile time in `--release` mode quite a bit, it doesn't really slow things down and, conceptually, it seems closer to what we want the physical architecture to look like (we don't want to monomorphise EVERYTHING in a single leaf crate).
* Remove some TextUnit->usize escapeesCAD972020-03-132-8/+8
|