XFFXFF
fedd0245d1
derive completions take existing derives into count
2022-04-18 21:34:36 +08:00
iDawer
d26deb5b9f
Show impl Trait
in argument positon in completion details
...
`hir`: Use `db.callable_item_signature` query more.
2022-04-16 19:18:42 +05:00
iDawer
9d787e1bfe
Add hir::Function::async_ret_type
method
...
Adjust completion detail for `async fn` return types
2022-04-16 13:53:22 +05:00
iDawer
f972adc201
fix: comletion detail shows {unknown}
for impl Trait
in return position
2022-04-16 13:41:10 +05:00
Jonas Schievink
1fd232cd69
Enable ADT keyword completions in block expression
2022-04-14 18:39:27 +02:00
Jonas Schievink
22b13c8bff
Make trait item completions work in a bare impl and score them
2022-04-08 19:56:41 +02:00
Jonas Schievink
99d91bc550
flyimport: omit types when completing where-clause
2022-04-07 20:02:33 +02:00
hkalbasi
003a6b74e4
suggest infered type in auto complete
2022-04-03 11:17:33 +04:30
Lukas Wirth
9b046d1051
fix: Don't complete Drop::drop for qualified paths
2022-03-26 18:46:49 +01:00
unexge
4e4c9ea4ac
fix: Correctly suggest auto importing traits from aliases
2022-03-22 22:30:29 +01:00
Lukas Wirth
000e681d5f
fix: Fix tuple- and record struct completions not working with existing braces
2022-03-21 22:01:26 +01:00
Lukas Wirth
7370a6b5b8
fix: Fix flyimport showing functions in pattern position
2022-03-21 19:41:39 +01:00
Jonas Schievink
14203c6378
Complete assoc const patterns on builtin types
2022-03-18 15:36:18 +01:00
Jonas Schievink
e7564086f4
Update crates/ide_completion/src/tests/pattern.rs
2022-03-18 14:53:44 +01:00
hi-rustin
bc8665e14d
Fix typo
...
Signed-off-by: hi-rustin <rustin.liu@gmail.com>
2022-03-17 22:59:47 +08:00
hi-rustin
2bc545d9ef
Match the enum and union
...
Signed-off-by: hi-rustin <rustin.liu@gmail.com>
2022-03-17 21:38:21 +08:00
hi-rustin
c6ef4e830e
Fix the wrong path resolution
...
Signed-off-by: hi-rustin <rustin.liu@gmail.com>
2022-03-17 20:39:04 +08:00
hi-rustin
a9aae250ed
Add completes_associated_const test
...
Signed-off-by: hi-rustin <rustin.liu@gmail.com>
2022-03-17 20:39:00 +08:00
Lukas Wirth
a40a847d77
Revert omitting field completions
2022-03-16 16:41:35 +01:00
Lukas Wirth
02b401b130
Simplify completion render functionality
2022-03-16 16:27:55 +01:00
Lukas Wirth
4fe5f03c7f
Rename compound things to variant things
2022-03-16 13:41:47 +01:00
bors[bot]
61b1449387
Merge #11714
...
11714: fix: Fix completions not always working in for-loop patterns r=Veykril a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/11205
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2022-03-15 17:58:21 +00:00
Lukas Wirth
d5f8d91872
fix: Fix completions not always working in for-loop patterns
2022-03-15 18:46:32 +01:00
Morgan Thomas
6519b0a009
Suggest union literals, suggest union fields within an empty union literal
2022-03-12 06:58:43 -08:00
Morgan Thomas
2a22cf8efc
Complete enum variants identically to structures.
...
In particular:
- unit variants now display in the menu as "Variant", complete to "Variant", and display a detail of "Variant" (was "()")
- tuple variants now display in the menu as "Variant(…)", complete to "Variant(${1:()})$0" (was "Variant($0)"), and display a detail of "Variant(type)" (was "(type)")
- record variants now display in the menu as "Variant {…}", complete to "Variant { x: ${1:()} }$0" (was "Variant"), and display a detail of "Variant { x: type }" (was "{x: type}")
This behavior is identical to that of struct completions. In addition, tuple variants no longer set triggers_call_info, as to my understanding it's unnecessary now that we're emitting placeholders.
Tests have been updated to match, and the render::enum_variant::tests::inserts_parens_for_tuple_enums test has been removed entirely as it's covered by other tests (render::enum_detail_includes_{record, tuple}_fields, render::enum_detail_just_name_for_unit, render::pattern::enum_qualified).
2022-03-11 18:26:01 -08:00
Morgan Thomas
1c5b2c7d03
- Break out functionality related to rendering struct completions into crates/ide_completion/src/render/compound.rs
...
- Add support for placeholder completions in tuple structs
- Denote tuple struct completions with `(…)` instead of ` {…}`
- Show struct completions as their type (`Struct { field: Type }`) in the completion menu instead of raw snippet text (`Struct { field: ${1:()} }$0`)
2022-03-11 17:55:25 -08:00
Lukas Wirth
6c8c02f625
Don't parse source files to generate macro completion details
2022-03-10 22:21:58 +01:00
Lukas Wirth
b1ab5770c9
Enable qualifier completions for derives
2022-03-10 21:56:19 +01:00
Lukas Wirth
2abe19e46a
Don't offer qualified path completions for buitlin derives
2022-03-10 21:22:13 +01:00
Lukas Wirth
a8b76b632c
Expand into pseudo-derive attribute expansions in completions
2022-03-10 20:53:50 +01:00
Lukas Wirth
94e59c9c56
Simplify
2022-02-22 10:20:45 +01:00
Florian Diebold
30287e6051
Fix test
2022-02-08 20:44:46 +01:00
Lukas Wirth
2310908df7
fix: Fix vis restriction path completions always using the parent module
2022-02-03 17:02:12 +01:00
Lukas Wirth
d3f3b6a87f
Sort completion calls lexicographically
2022-02-03 16:05:21 +01:00
Lukas Wirth
9f5ee155c1
Move path completions for patterns into pattern module
2022-02-03 15:52:03 +01:00
Lukas Wirth
a3ad99649f
Add missing test for use completions
2022-02-03 15:52:03 +01:00
Lukas Wirth
136dadac9a
Add completion module tailored towards visibility modifiers
2022-02-03 15:52:03 +01:00
Lukas Wirth
661d721e20
Add completion module tailored towards use trees
2022-02-03 15:51:57 +01:00
Lukas Wirth
6940cca760
Move attribute path completions into attribute completion module
2022-02-03 15:50:14 +01:00
Lukas Wirth
7267749f6b
Cleanup Completions
api a bit
2022-02-02 12:19:43 +01:00
Lukas Wirth
6194092086
Complete local fn and closure params from surrounding locals scope
2022-01-31 11:56:42 +01:00
bors[bot]
de50ef4bea
Merge #11263
...
11263: fix: Fix don't drop param completions when fully typing out a pattern r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2022-01-12 11:37:18 +00:00
Lukas Wirth
314b199e3c
fix: Fix don't drop param completions when fully typing out a pattern
2022-01-12 12:36:46 +01:00
Lukas Wirth
51419c1931
Don't complete attributes with existing expressions
2022-01-11 19:03:21 +01:00
Eduardo Canellas
a9612666f8
fix(completions): improve fn_param
...
- insert commas around when necessary
- only suggest `self` completions when param list is empty
- stop suggesting completions for identifiers which are already on the param list
2022-01-04 15:03:46 -03:00
Lukas Wirth
7f7a3644b3
Fully render type alias completions from hir
2021-12-21 16:36:23 +01:00
Lukas Wirth
40d5c58a80
Fully render const item completions from hir
2021-12-21 16:35:51 +01:00
Lukas Wirth
97f7865c56
Simplify macro rendering, remove constructor structs
2021-12-21 15:20:15 +01:00
bors[bot]
04b0b19cdb
Merge #10527
...
10527: internal: Remove a few snippet completions, replace them with user snippets definitions in VSCode r=Veykril a=Veykril
Closes https://github.com/rust-analyzer/rust-analyzer/issues/9636
cc https://github.com/rust-analyzer/rust-analyzer/issues/7033#issuecomment-939959905
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-12-17 15:44:48 +00:00
Lukas Wirth
2a88b76041
Update tests
2021-12-17 16:39:21 +01:00