andylizi
2b1c1a934c
feat: hide type inlay hints for initializations of closures
2022-05-20 17:42:56 +08:00
NotWearingPants
641b78a162
hide closure ret hints if ret type is specified
...
fixes #12319
2022-05-20 02:35:37 +03:00
Jonas Schievink
52ff863abc
Teach Callable
about closures properly
2022-05-19 18:53:08 +02:00
Lukas Wirth
9ebb55d354
Hide more unnecessary parameter hints for constructors
2022-05-19 15:44:52 +02:00
Lukas Wirth
5fe28441b8
Update test fixtures
2022-05-19 15:20:45 +02:00
Lukas Wirth
b08bbd7be0
Enable hovering function parameter inlay hints
2022-05-19 14:32:40 +02:00
Lukas Wirth
74230e26ff
internal: Improve inlay hint tooltips
2022-05-19 13:38:37 +02:00
Lukas Wirth
58a241134c
Update test output
2022-05-17 14:58:26 +02:00
Lukas Wirth
21f37a6d9e
Allow inlay hint tooltips to trigger hovers
2022-05-17 14:46:43 +02:00
Lukas Wirth
a2ec010185
Trigger hover requests on closing brace hints
2022-05-17 13:39:45 +02:00
Lukas Wirth
0756719a30
Replace some SmolStr usages with String as the conversion happens anyways
2022-05-17 12:56:14 +02:00
Lukas Wirth
12d5343993
internal: Cleanup lifetime elision hints
2022-05-17 12:18:07 +02:00
Jonas Schievink
fccc12982e
Add closing brace hints for macros
2022-05-16 15:23:25 +02:00
Jonas Schievink
867a7dc7a0
Show inlay hints after a }
to indicate the closed item
2022-05-16 14:55:47 +02:00
Lukas Wirth
7cbde1b3a5
Enable reborrow hints in attribute calls
2022-05-14 15:00:14 +02:00
Lukas Wirth
6b696fced8
feat: Add binding mode inlay hints
2022-05-14 14:58:35 +02:00
Lukas Wirth
c2190ad87c
feat: Allow reborrow inlay hints to be restricted to mutable reborrows only
2022-05-12 14:00:06 +02:00
Lukas Wirth
822d9b55b7
fix: Add cast expressions to param name inlay hint heuristics
2022-05-10 13:43:43 +02:00
Lukas Wirth
5e413997a1
minor: Add test for parameter and reborrow hint order
2022-04-26 11:46:03 +02:00
Lukas Wirth
4255996965
Re-export FxHashMap
and FxHashSet
from ide_db
2022-04-25 18:51:59 +02:00
Lukas Wirth
75689f2ad8
internal: Enforce Resolver to always have a module scope
2022-03-31 11:12:08 +02:00
Lukas Wirth
5a87f09a71
Update inlay hint feature docs
2022-03-20 14:41:27 +01:00
Lukas Wirth
37b48ceb8f
feat: Visualize compiler inserted reborrows via inlay hints
2022-03-20 14:38:16 +01:00
Lukas Wirth
2598575a35
fix: Fix closure hints using macro ranges
2022-03-19 20:24:09 +01:00
Lukas Wirth
7da5b80f25
Change skip trivial behaviour
2022-03-19 20:12:14 +01:00
Lukas Wirth
7ab0aaa82a
Add option to skip trivial cases
2022-03-19 19:01:19 +01:00
Lukas Wirth
45756c823f
Use numbers for lifetimes by default, add setting to prefer using parameter names
2022-03-19 18:11:56 +01:00
Lukas Wirth
c22fed895e
Fix test fixtures
2022-03-18 18:57:15 +01:00
Lukas Wirth
b634d99361
Give the lifetimes better names
2022-03-18 18:55:03 +01:00
Lukas Wirth
673e2b1d8f
feat: Implement lifetime elision hints
2022-03-18 18:11:16 +01:00
Lukas Wirth
bd17933c31
feat: Add return type hints for closures with block bodies
2022-03-16 21:25:03 +01:00
Lukas Wirth
4fe5f03c7f
Rename compound things to variant things
2022-03-16 13:41:47 +01:00
Lukas Wirth
62265ee9cb
fix: Allow configuration of colons in inlay-hints
2022-03-11 21:15:36 +01:00
bors[bot]
49646b71d4
Merge #11445
...
11445: Upstream inlay hints r=lnicola a=lnicola
Closes https://github.com/rust-analyzer/rust-analyzer/issues/2797
Closes https://github.com/rust-analyzer/rust-analyzer/issues/3394 (since now resolve the hints for the range given only, not for the whole document. We don't actually resolve anything due to [hard requirement](https://github.com/rust-analyzer/rust-analyzer/pull/11445#issuecomment-1035227434 ) on label being immutable. Any further heavy actions could go to the `resolve` method that's now available via the official Code API for hints)
Based on `@SomeoneToIgnore's` branch, with a couple of updates:
- I squashed, more or less successfully, the commits on that branch
- downloading the `.d.ts` no longer works, but you can get it manually from https://raw.githubusercontent.com/microsoft/vscode/release/1.64/src/vscode-dts/vscode.proposed.inlayHints.d.ts
- you might need to pass `--enable-proposed-api matklad.rust-analyzer`
- if I'm reading the definition right, `InlayHintKind` needs to be serialized as a number, not string
- this doesn't work anyway -- the client-side gets the hints, but they don't display
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2022-03-07 16:49:12 +00:00
Lukas Wirth
ab21cf2f4f
internal: Re-arrange ide_db modules
2022-03-06 19:04:04 +01:00
Kirill Bulatov
b1d8dae930
Load hints for part of the file only
2022-03-04 07:45:51 +02:00
Chayim Refael Friedman
13ac5c3491
Fix various IDE features
...
As a side benefit, we got `let` guard support for `move_guard` for free.
2022-02-21 08:34:35 +02:00
Heinenen
05abfc77f5
hide type inlay hints
2021-12-23 12:56:38 +01:00
Heinenen
d7dfe93fc3
hide type inlay hints for enum variant constructors and tuple struct constructors
2021-12-23 12:56:38 +01:00
Lukas Wirth
76022bfd60
fix: Show parameter hints unconditionally for logical not expressions
2021-11-27 19:14:36 +01:00
Lukas Wirth
ec07bb98f8
fix: Omit generic defaults for types in hover messages
2021-11-22 18:27:03 +01:00
Lukas Wirth
cd290b427c
fix: inlay param hint hiding heurstic is case unsensitive
2021-11-19 12:46:17 +01:00
Jake Heinz
520ff62f4e
flip the default
2021-11-13 23:39:34 +00:00
Jake Heinz
d3d768de0d
inlay hints: add the option to always show constructor inlay hints
2021-11-13 23:12:29 +00:00
Lukas Wirth
439a8194b0
Replace more Name::to_string usages with Name::to_smol_str
2021-11-04 18:12:05 +01:00
Milo
35e5daacc3
more clippy fixes
2021-10-16 12:32:55 +01:00
Lukas Wirth
a31bc668f5
Hide generic constructors if appropriate
2021-10-03 15:35:26 +02:00
Lukas Wirth
992b4648d9
feat: Hide type inlay hints for constructors
2021-10-03 14:53:18 +02:00
Lukas Wirth
b6ed91a6de
Rename *Owner
traits to Has*
2021-09-27 12:54:24 +02:00
Lukas Wirth
6465868449
Make inlay hints work in attributed items
2021-09-18 13:19:29 +02:00