aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_ide/src
Commit message (Collapse)AuthorAgeFilesLines
* Add `FieldShorthand` variant to `NameClass`unexge2020-06-082-1/+2
|
* Add goto def for enum variant fieldunexge2020-06-061-0/+19
|
* Fix type parameter defaultsFlorian Diebold2020-06-052-3/+3
| | | | | They should not be applied in expression or pattern contexts, unless there are other explicitly given type args.
*-. Merge #4729 #4748bors[bot]2020-06-052-13/+137
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]>
| * | Add enum hover action test.vsrs2020-06-051-0/+15
| | |
| * | Rebase on the latest master.vsrs2020-06-051-3/+3
| | |
| * | Code formattingvsrs2020-06-052-4/+3
| | |
| * | Add hover actions as LSP extensionvsrs2020-06-052-13/+123
| |/
* / Inlay Hints: more directly account for self paramAleksey Kladov2020-06-051-2/+1
|/
* Merge branch 'master' into compute-lazy-assitsMikhail Rakhmanov2020-06-0312-20/+315
|\ | | | | | | | | | | # Conflicts: # crates/rust-analyzer/src/main_loop/handlers.rs # crates/rust-analyzer/src/to_proto.rs
| * Merge #4678bors[bot]2020-06-031-2/+11
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4678: Unsquish parameter types in tooltips for macro-generated functions r=aloucks a=aloucks Note the missing whitespace between `:` and the parameter type. Before: ![image](https://user-images.githubusercontent.com/221559/83364680-faf13d80-a370-11ea-96b7-a041969a4954.png) After: ![image](https://user-images.githubusercontent.com/221559/83364685-03e20f00-a371-11ea-9668-4e6ebcb81947.png) Co-authored-by: Aaron Loucks <[email protected]>
| | * Use split1 when formatting function signature paramsAaron Loucks2020-06-031-5/+3
| | |
| | * Unsquish parameter types in tooltips for macro-generated functionsAaron Loucks2020-05-311-1/+12
| | |
| * | Consolidate documentation expansion and mergingAaron Loucks2020-06-031-53/+7
| | | | | | | | | | | | | | | | | | Removes the duplicated `expand_doc_attrs` and `merge_doc_comments_and_attrs` functions from `ra_ide` and exposes the same functionality via `ra_hir::Documentation::from_ast`.
| * | Add basic hover and completion doc tests for macro generated itemsAaron Loucks2020-06-032-1/+181
| | |
| * | Enable hover and autocomplete docs on macro generated itemsAaron Loucks2020-06-031-5/+50
| | |
| * | Add highlight support for unsafe fn calls and raw ptr derefPaul Daniel Faria2020-06-029-5/+112
| | |
* | | Merge remote-tracking branch 'upstream/master' into compute-lazy-assitsMikhail Rakhmanov2020-06-022-70/+246
|\| | | | | | | | | | | | | | # Conflicts: # crates/rust-analyzer/src/to_proto.rs
| * | Fix testsAleksey Kladov2020-06-021-15/+210
| | |
| * | New runnables APIAleksey Kladov2020-06-022-55/+36
| | |
* | | Preliminary implementation of lazy CodeAssitsMikhail Rakhmanov2020-06-021-22/+17
|/ /
* | Merge #4658bors[bot]2020-06-022-0/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 4658: Fix problem with format string tokenization r=matklad a=ruabmbua Fixed by just not handling closing curlybrace escaping. Closes https://github.com/rust-analyzer/rust-analyzer/issues/4637 Co-authored-by: Roland Ruckerbauer <[email protected]>
| * | Test case for format string highlighting of closing curlybraceRoland Ruckerbauer2020-05-302-0/+2
| | |
* | | add testBrennan Vincent2020-05-311-0/+27
| | |
* | | Merge #4664bors[bot]2020-05-3120-175/+363
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 4664: Generate feature documentation from code r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | Move the rest of the features to generated docsAleksey Kladov2020-05-316-142/+212
| | |
| * | Doc more featuresAleksey Kladov2020-05-313-6/+40
| | |
| * | Don't require module docs for Features and AssistsAleksey Kladov2020-05-3110-25/+41
| | |
| * | Specify actionsAleksey Kladov2020-05-314-3/+20
| | |
| * | Generate features docs from sourceAleksey Kladov2020-05-317-2/+53
| |/
* / Add semantic highlight to QUESTION tokenRoland Ruckerbauer2020-05-292-0/+3
|/ | | | Made it an operator with controlFlow modifier.
* Fixed missing newline on each field on "Missing structure fields".Cadu2020-05-271-1/+1
|
* Merge #4592bors[bot]2020-05-272-1/+48
|\ | | | | | | | | | | | | | | 4592: fix textedit range returned for completion when left token is a keyword r=bnjjj a=bnjjj close #4545 Co-authored-by: Benjamin Coenen <[email protected]>
| * fix textedit range returned for completion when left token is a keywordBenjamin Coenen2020-05-272-0/+3
| | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * fix textedit range returned for completion when left token is a keyword #4545Benjamin Coenen2020-05-242-1/+45
| | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
* | Merge #4596bors[bot]2020-05-271-1/+59
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4596: Strip leading underscores of argument names in function/method r=matklad a=kuy Closes #4510 ### Goal When I select a function/method from completions, I get a snippet that doesn't contain leading underscores of argument names. ### Solution - Option 1: All signatures don't contain underscores - Option 2: Keep same signature, but inserted snippet doesn't contain underscores I choose Option 2 because I think that leading underscores is a part of "signature". Users should get correct signatures. On the other hand, trimming underscores is an assist by IDE. ### Other impls. rls: Complete argument names with underscores (same as actual ra) IntelliJ Rust: Doesn't complete argument names VSCode (TypeScript): Doesn't complete argument names ### Working example ![Screen Shot 2020-05-25 at 0 03 21](https://user-images.githubusercontent.com/151614/82757771-a05e5b80-9e1d-11ea-9dbc-1263c960e2ae.png) Co-authored-by: Yuki Kodama <[email protected]>
| * | Trim at presentation layerYuki Kodama2020-05-252-4/+2
| | |
| * | Fix test to consider multiple underscoresYuki Kodama2020-05-251-7/+7
| | |
| * | Use built-in methodYuki Kodama2020-05-251-11/+5
| | |
| * | Separate assertionsYuki Kodama2020-05-251-7/+65
| | |
| * | Reflect test caseYuki Kodama2020-05-251-7/+7
| | |
| * | Strip leading underscoreYuki Kodama2020-05-251-2/+10
| | |
| | |
| \ \
*-. \ \ Merge #4625 #4629bors[bot]2020-05-271-3/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4625: Partially fix displaying inlay hints in Github PR diff views r=matklad a=Veetaha See the comment in https://github.com/rust-analyzer/rust-analyzer/issues/4608#issuecomment-63424257 It partially fixes the left side of diff view (the one where old code is displayed), but the diff editor with new code changes still has `file` scheme and will proceed displaying inlay hints... 4629: Fix the `should_panic` snippet r=matklad a=eminence Closes #4628 Co-authored-by: veetaha <[email protected]> Co-authored-by: Andrew Chin <[email protected]>
| | * | | Fix the `should_panic` snippetAndrew Chin2020-05-261-3/+3
| |/ / / | | | | | | | | | | | | Closes #4628
* / / / Pass trivially copy types as copykjeremy2020-05-261-32/+29
|/ / /
* | | Merge #4534bors[bot]2020-05-261-0/+59
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4534: Add call postfix completion r=matklad a=vain0x To make it easier to wrap an expression with Ok/Some/Rc::new etc. Note I agree with conclusion of the discussion in #1431 that adding many completions is not the way to go. However, this PR still could be justified due to versatility of use. Co-authored-by: vain0x <[email protected]>
| * | | Add call postfix completionvain0x2020-05-201-0/+59
| | | | | | | | | | | | | | | | To make it easier to wrap an expression with Ok/Some/Rc::new etc.
* | | | Hover tooltip module name is monospace once againAaron Loucks2020-05-262-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The line separator is moved below the function signature to split regions between the docs. This is very similar to how IntelliJ displays tooltips. Adding an additional separator between the module name and function signature currently has rendering issues. Fixes #4594 Alternative to #4615
* | | | Fix some clippy perf warningsJeremy Kolb2020-05-251-4/+4
| |/ / |/| |
| | |
| \ \
*-. \ \ Merge #4602 #4603bors[bot]2020-05-253-4/+7
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4602: Add boolean literal semantic token type to package.json r=matklad a=lnicola Closes #4583. CC @GrayJack 4603: Add self keyword semantic token type r=matklad a=lnicola Not sure if this is warranted a new token type or just a modifier. --- CC #4583, @GrayJack Co-authored-by: LaurenČ›iu Nicola <[email protected]>