Commit Graph

175 Commits

Author SHA1 Message Date
Kirill Bulatov d7f182bd30 Forbid flyimport completions in use statements 2021-01-29 00:28:54 +02:00
Aleksey Kladov d35bda6429 Make always-assert crate reusable 2021-01-26 22:13:42 +03:00
Lukas Wirth a872ebf81f Support unions in symbol search 2021-01-24 01:32:52 +01:00
Aleksey Kladov 96197e0873 Normalize tests 2021-01-22 19:15:34 +03:00
Aleksey Kladov a40f78f92a More useful fn detail in completion
Detail should be rendered as shtort one line, just dumping fn header
there is not useful, despite the fact that TS does this.

The fact that this is a function should be indicated by the icon, the
same goes for pub/const/async etc qualitfiers

name is already present in the lable (and arg list should be a part of
that, as in idea)

But the return type is the small genuinerlly useful bit of info we can show here
2021-01-22 19:15:34 +03:00
Lukas Wirth 08b822b259 Update completions test output 2021-01-20 18:46:22 +01:00
Lukas Wirth f2cb7dbcb7 Partially unify SymbolKind and CompletionItemKind 2021-01-20 18:39:46 +01:00
Lukas Wirth 83e49200d8 Add LifetimeParam and ConstParam to CompletionItemKind 2021-01-19 20:25:29 +01:00
bors[bot] f647e134a7 Merge #7351
7351: Show const params in completions r=Veykril a=Veykril

bors r+
![image](https://user-images.githubusercontent.com/3757771/105080872-bba76680-5a91-11eb-91cd-0910da4c8312.png)


Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-19 19:07:33 +00:00
Lukas Wirth bed12833cc Show const params in completions 2021-01-19 20:06:39 +01:00
Kirill Bulatov ca65488276 Show deprecated completions for deprecated traits 2021-01-19 01:08:59 +02:00
Kirill Bulatov cc663a7b0c Consider rustc_deprecated attr when checking for deprecation 2021-01-19 00:04:24 +02:00
bors[bot] 8164e2ea31 Merge #7339
7339: Delete optional arg for inline attr and add doc alias attr completion r=lnicola a=bnjjj

close #7167

Co-authored-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2021-01-18 19:54:40 +00:00
Benjamin Coenen 52bce6bf5d Delete optional arg for inline attr and add doc alias attr completion #7167
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2021-01-18 20:50:45 +01:00
bors[bot] 342bf41022 Merge #7297 #7338
7297: Propose trait associated items and autoimport traits on completion r=matklad a=SomeoneToIgnore

![trait_imports](https://user-images.githubusercontent.com/2690773/104819998-6faeb480-583a-11eb-8b45-b7351b51b90e.gif)

Closes #7248

7338: Parse `impl const Trait` r=Veykril a=Veykril

Closes #7313

bors r+

Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-18 19:40:11 +00:00
Kirill Bulatov f01cfe9114 Small token fix
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-18 21:30:04 +02:00
Aleksey Kladov a60168e674 Use assert_never properly 2021-01-18 15:58:10 +03:00
Aleksey Kladov 0a570eddd2 Less annoying mod completion
We shouldn't complete optional elements, as deleting stuff is much more
annoying than adding it.
2021-01-17 13:18:45 +03:00
Kirill Bulatov d1ac3293f4 Properly resolve completion edits for empty input 2021-01-17 02:57:38 +02:00
Kirill Bulatov 68626e4ef5 Draft the working completion 2021-01-17 02:57:34 +02:00
Kirill Bulatov db335a1bbf Add flyimport completion for trait assoc items 2021-01-16 20:44:12 +02:00
Kirill Bulatov 497fc232e7 Unindent the test 2021-01-16 19:51:42 +02:00
Kirill Bulatov 7ae1309ac5 Use specific kind for the flyimport completions 2021-01-16 19:40:59 +02:00
Kirill Bulatov 6742f38e49 Share import_assets and related entities 2021-01-16 19:33:36 +02:00
Aleksey Kladov 6dbba4d75d Remove useless wrapper 2021-01-15 20:15:33 +03:00
Aleksey Kladov f2ba2048d1 Insert ; when completing keywords in let 2021-01-15 15:49:59 +03:00
Aleksey Kladov 41ea260201 Simplify 2021-01-15 15:14:31 +03:00
Aleksey Kladov 9b1bc19d67 Add braces when completing ifs 2021-01-15 15:01:32 +03:00
Aleksey Kladov 8dc68ecdfc Introduce more appropriate assertion mechanism
rust-analyzer is a long-running program, so we *should* handle assertion
failures.

See also https://www.sqlite.org/assert.html.
2021-01-14 18:25:19 +03:00
Aleksey Kladov dd5b3cd6f0 Add a test for #7110 2021-01-14 14:33:02 +03:00
bors[bot] 8ad325a806 Merge #7051 #7219 #7245 #7246
7051: Check dbg! macro in tidy_test r=matklad a=edwin0cheng

Same as `check_todo` but for dbg! macro

r? @matklad 

7219: Refactor rename name checking r=matklad a=Veykril

Improves the user facing error messages a bit and prevents renaming to `_` when the name is referenced as this would change source to not compile anymore since `_` is only a pattern, not a proper identifier.

7245: Encourage gifs r=matklad a=matklad

bors r+
🤖

7246: Unfreeze cargo_metadata r=matklad a=kjeremy

It now pulls in a newer version of semver-parser.

This does add a dependency on `cargo-platform` in the interest of correctness.

Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Co-authored-by: kjeremy <kjeremy@gmail.com>
2021-01-11 13:37:28 +00:00
bors[bot] 8c33ffecc1 Merge #7235
7235: Postfix completions like ifl now works with references r=Veykril a=Maan2003

Closes #7230 

Co-authored-by: Manmeet <manmeetmann2003@gmail.com>
Co-authored-by: Manmeet Maan <manmeetmann2003@gmail.com>
2021-01-11 11:27:54 +00:00
Manmeet Maan f05c14594a Fix formatting 2021-01-11 11:47:38 +05:30
Manmeet Maan 430dc5cd24 Apply Suggestions from code review 2021-01-11 11:32:55 +05:30
Lukas Wirth e618d12903 Replace SyntaxKind usage with T! macro where applicable 2021-01-10 17:14:01 +01:00
Manmeet 0d84adad35 Postfix like ifl now works with references 2021-01-10 20:12:17 +05:30
Laurențiu Nicola 9772de401e Avoid string copy in complete_attribute 2021-01-10 12:19:00 +02:00
Edwin Cheng ee93037ed9 Use another name instead of dbg for test 2021-01-08 17:38:39 +08:00
Lukas Wirth 6dca2cbba5 Simplify mod completion 2021-01-07 23:33:52 +01:00
Lukas Wirth ca6db58762 Tidy up attribute completion match 2021-01-07 22:48:54 +01:00
Kevaundray Wedderburn 72b9a4fbd3 Change <|> to $0 - Rebase 2021-01-07 12:09:23 +00:00
Aleksey Kladov f8a0561178 Align config's API with usage
The config now is mostly immutable, optimize for that.
2021-01-06 21:22:24 +03:00
Aleksey Kladov 6e87828756 YAGNI active_resolve_capabilities
This leaks a lot of LSP details into ide layer, which we want to avoid:

https://github.com/rust-analyzer/rust-analyzer/tree/c9cec381bcfd97e5f3536e31a9c546ab5c0665e6/docs/dev#lsp-independence

Additionally, all what this infra does is providing a toggle for
auto-import completion, but we already have one!
2021-01-06 20:23:53 +03:00
FlowerBOII e3d39cf2b1 Change the should_panic completion and his related attribute test 2021-01-06 12:23:19 +01:00
FlowerBOII 220c838bc6 Remove the args for the must_use attibute and change the related tests 2021-01-06 12:04:23 +01:00
FlowerBOII db0a844ad8 Update deprecated test 2021-01-06 11:07:57 +01:00
FlowerBOII 64f8ec4632 Remove a part of the deprecated autocompletion 2021-01-06 11:06:02 +01:00
bors[bot] c8d3d5694b Merge #7168
7168: Rename expr -> tail_expr r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-05 12:51:38 +00:00
Aleksey Kladov f9707cde68 Rename expr -> tail_expr 2021-01-05 15:51:13 +03:00
Kirill Bulatov 27b3b13824 Small helpers 2021-01-04 22:01:35 +02:00