Commit Graph

259 Commits

Author SHA1 Message Date
mahdi-frms
486bffc23e show imported trait on autocompletion of associated items 2021-07-05 02:13:49 +04:30
Aleksey Kladov
9b3292541c internal: improve feedback for relevance tests 2021-07-04 17:03:28 +03:00
Aleksey Kladov
fbb9d69758 feat: always prefer postfix snippets if there's exact textual match
Note that, while we don't currently have a fuzzy-matching score, it
makes sense to special-case postfix templates -- it's very annoying when
`.not()` gets sorted before `.not`. We might want to move this infra to
fuzzy matching, once we have that!
2021-07-04 16:50:02 +03:00
Aleksey Kladov
6e9780c005 internal: make CompletionItem and SourceChange consistent
Before this PR, SourceChange used a bool and CompletionItem used an enum
to signify if edit is a snippet. It makes sense to use the same pattern
in both cases. `bool` feels simpler, as there's only one consumer of
this API, and all producers are encapsulated anyway (we check the
capability at the production site).
2021-07-04 15:44:03 +03:00
Aleksey Kladov
e9d52c23b3 minor: fix lint completion sourcegen 2021-07-04 11:30:56 +03:00
Aleksey Kladov
660930623e feat: regenrate lint completions 2021-07-03 22:24:36 +03:00
Aleksey Kladov
58d2ece88a internal: overhaul code generation
* Keep codegen adjacent to the relevant crates.
* Remove codgen deps from xtask, speeding-up from-source installation.

This regresses the release process a bit, as it now needs to run the
tests (and, by extension, compile the code).
2021-07-03 22:11:03 +03:00
bors[bot]
c8d0ca8080
Merge #9398
9398: minor: Complete `macro_use` attribute on modules r=Veykril a=Veykril

bors r+

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-06-24 20:21:20 +00:00
Lukas Wirth
63b1394b70 Complete macro_use attribute on modules 2021-06-24 22:20:56 +02:00
Lukas Wirth
85736f2dc9 Fix incorrect base fixture in ide_completion tests 2021-06-23 19:13:27 +02:00
Lukas Wirth
9abd28ac37 Restrict type bound completions to traits, modules and macros 2021-06-23 19:10:03 +02:00
Lukas Wirth
d4877ae992 Add predicate tests for ide_completions 2021-06-23 18:58:19 +02:00
Lukas Wirth
dc4876d33d Lift out base item fixture for ide_completion tests 2021-06-23 18:37:47 +02:00
Jamie Cunliffe
ae823aa23f Move features into potential_cfg_options 2021-06-21 17:54:05 +01:00
Jamie Cunliffe
284483b347 Improve completion of cfg attributes
The completion of cfg will look at the enabled cfg keys when
performing completion.

It will also look crate features when completing a feature cfg
option. A fixed list of known values for some cfg options are
provided.

For unknown keys it will look at the enabled values for that cfg key,
which means that completion will only show enabled options for those.
2021-06-21 17:47:00 +01:00
bors[bot]
c69f762f26
Merge #9356
9356: internal: Move out and regroup more completion tests r=Veykril a=Veykril

bors r+

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-06-21 13:15:12 +00:00
Lukas Wirth
0729913525 Various keyword completion fixes 2021-06-21 15:14:28 +02:00
Lukas Wirth
b9d85f55b7 Move out completion type position tests 2021-06-21 15:00:53 +02:00
Lukas Wirth
f835279b3a Move out completion pattern tests 2021-06-21 13:48:25 +02:00
Aleksey Kladov
9a3eae8755 fix: don't add duplicate & during completion 2021-06-20 19:37:58 +03:00
bors[bot]
d9666ce509
Merge #9334
9334: feat: Allow to disable import insertion on single path glob imports r=Veykril a=Veykril

On by default as I feel like this is something the majority would prefer.

Closes #8490

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-06-18 21:23:22 +00:00
Lukas Wirth
2ee090faaf Allow to disable import insertion on single path glob imports 2021-06-18 23:11:56 +02:00
Aleksey Kladov
a9623f3165 minor: use minicore 2021-06-18 23:38:19 +03:00
Aleksey Kladov
cc73abf72c minor: use minicore 2021-06-18 23:33:01 +03:00
Aleksey Kladov
89a0e58393 internal: use minicore deref more 2021-06-18 22:47:02 +03:00
Aleksey Kladov
2e4df27132 minor: use minicore 2021-06-18 22:25:35 +03:00
rdambrosio
b3e5c648e0 Lift ast -> hir out of the for_each 2021-06-18 12:42:13 -04:00
rdambrosio
23e3354ae0 Remove extra whitespace 2021-06-18 02:14:00 -04:00
rdambrosio
8e08b86304 Feat: inline generics in const and func trait completions 2021-06-17 19:54:28 -04:00
bors[bot]
0d863ccea9
Merge #9313
9313: fix: Don't complete keywords in attributes inside expressions r=Veykril a=Veykril

bors r+

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-06-17 22:30:30 +00:00
Lukas Wirth
c1bf1f88ad Complete repr attribute parameters 2021-06-17 21:15:49 +02:00
Aleksey Kladov
08c220ab2c internal: add default to minicore 2021-06-17 20:49:49 +03:00
bors[bot]
ce926aebc4
Merge #9315
9315: Nest all the or-patterns! r=Veykril a=Veykril

`cargo +nightly clippy --fix -Z unstable-options --allow-dirty -- -A clippy::all -D clippy::unnested_or_patterns`

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-06-17 16:22:32 +00:00
Lukas Wirth
95c8c65139 Nest all the or-patterns! 2021-06-17 17:37:14 +02:00
Lukas Wirth
2ac03ef1d6 Don't complete keywords in attributes inside expressions 2021-06-17 16:02:51 +02:00
Lukas Wirth
2a48b53220 Correct completions in items tests 2021-06-17 15:43:21 +02:00
Lukas Wirth
a9a77671f2 Move item specific completion tests 2021-06-17 15:32:34 +02:00
Lukas Wirth
9df848c580 Less filtering in completion tests 2021-06-17 15:10:25 +02:00
Lukas Wirth
9353f36516 Fix incorrect completions in empty braced use statement 2021-06-17 13:59:31 +02:00
Lukas Wirth
2225db2eb4 Refine self, super and crate completion in use paths 2021-06-17 13:56:55 +02:00
Lukas Wirth
e14f5cfff0 Move out and rewrite UseTree completion tests 2021-06-17 13:13:12 +02:00
Lukas Wirth
aa644b5585 Move test_utils into tests module 2021-06-16 21:51:52 +02:00
Lukas Wirth
11115ebad8 Don't complete paths after attributes 2021-06-16 21:51:21 +02:00
Lukas Wirth
9ea6ee6b27 Don't show incorrect completions after unsafe or visiblity node 2021-06-16 21:51:20 +02:00
Lukas Wirth
1a8f76a224 Don't complete visibility accessors after existing ones 2021-06-16 21:51:20 +02:00
Lukas Wirth
d338a80394 Start refactoring ide_completion tests 2021-06-16 21:51:20 +02:00
bors[bot]
f38770cd26
Merge #9302
9302: internal: Add builtin derives to attribute completion fixtures r=Veykril a=Veykril

bors R+

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-06-16 17:28:13 +00:00
Lukas Wirth
a92ed1eef4 Don't complete already used derive attributes 2021-06-16 19:27:06 +02:00
Lukas Wirth
8f936c5571 Add builtin derives to attribute completion fixtures 2021-06-16 19:25:09 +02:00
Lukas Wirth
66b701ed3e Simplify 2021-06-16 15:51:01 +02:00