bors
1927c2e1d8
Auto merge of #13830 - nyurik:lints, r=lnicola
...
Minor manual cleanup
* use default derive
* use `strip_prefix` where possible to avoid dup work
2022-12-24 17:58:32 +00:00
bors
fb0db2a420
Auto merge of #13831 - bvanjoi:fix_bound_type_in_trait_insert, r=Veykril
...
fix(completion): remove bound insert of type in trait
Fixed https://github.com/rust-lang/rust-analyzer/issues/13819
2022-12-23 12:27:44 +00:00
bvanjoi
67cbd8f7c1
fix(completion): remove bound insert of type in trait
2022-12-23 18:45:25 +08:00
Yuri Astrakhan
ec55dd1d7b
Minor manual cleanu
...
* use default derive
* use `strip_prefix` where possible to avoid dup work
2022-12-23 03:11:53 -05:00
Yuri Astrakhan
e341e996f7
Clippy-fix explicit auto-deref
...
Seems like these can be safely fixed. With one, I was particularly
surprised -- `Some(pats) => &**pats,` in body.rs?
```
cargo clippy --fix -- -A clippy::all -D clippy::explicit_auto_deref
```
2022-12-23 02:52:14 -05:00
Yuri Astrakhan
1d59c7b667
Remove non-needed clones
...
I am not certain if this will improve performance,
but it seems having a .clone() without any need should be removed.
This was done with clippy, and manually reviewed:
```
cargo clippy --fix -- -A clippy::all -D clippy::redundant_clone
```
2022-12-23 02:20:03 -05:00
bors
a06525517b
Auto merge of #13820 - Veykril:or-pat-bm-fix, r=Veykril
...
Fix binding mode hints always adding parentheses to or-patterns
2022-12-22 23:02:19 +00:00
Maybe Waffle
ef4c8167e8
Pass FamousDefs
around in inlay hints
2022-12-22 11:00:25 +00:00
bors
eb3963b22e
Auto merge of #13817 - WaffleLapkin:hide_adjustment_hints_outside_of_unsafe, r=Veykril
...
feat: Add an option to hide adjustment hints outside of `unsafe` blocks and functions
As the title suggests: this PR adds an option (namely `rust-analyzer.inlayHints.expressionAdjustmentHints.hideOutsideUnsafe`) that allows to hide adjustment hints outside of `unsafe` blocks and functions:
![2022-12-21_23-11](https://user-images.githubusercontent.com/38225716/208986376-d607de62-8290-4e16-b7fe-15b762dc5f60.png )
Requested by `@BoxyUwU` <3
2022-12-22 09:37:00 +00:00
Lukas Wirth
b9341e2fe6
Fix binding mode hints always adding parentheses to or-patterns
2022-12-22 10:35:35 +01:00
Waffle Maybe
1038db5f1d
Apply suggestions from code review
...
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2022-12-21 23:00:12 +00:00
bors
271f7b44d3
Auto merge of #13699 - HKalbasi:inlaylink, r=Veykril
...
Implement location link for type inlay hints
fix #11701
This actually doesn't work due a problem in vscode: https://github.com/microsoft/vscode/issues/167564
2022-12-21 21:43:38 +00:00
bors
113f17be6e
Auto merge of #13818 - Veykril:layout, r=Veykril
...
Simplify
2022-12-21 20:38:57 +00:00
Maybe Waffle
608dc492ea
Move is_inside_unsafe
to Semantics
impl
2022-12-21 20:36:05 +00:00
Lukas Wirth
8f8200eb14
Simplify
2022-12-21 21:34:01 +01:00
bors
c2840c809a
Auto merge of #13814 - Veykril:layout, r=Veykril
...
Calculate the TargetDataLayout correctly for the selected target
This fails the tests still since those don't call into rustc yet
2022-12-21 19:38:51 +00:00
Lukas Wirth
a694c342fa
Fix tests not using appropriate target data
2022-12-21 20:23:43 +01:00
Maybe Waffle
3bfe7040e8
Add an option to hide adjustment hints outside of unsafe blocks
2022-12-21 19:20:42 +00:00
Maybe Waffle
4748357045
Drive-by cleanup: fully qualify ast::Expr
in hir
2022-12-21 18:17:42 +00:00
hkalbasi
e1aa73ef40
Disable inlay hint location links on vscode < 1.76
2022-12-21 18:54:49 +03:30
Lukas Wirth
33591cd3f4
Calculate the TargetDataLayout correctly for the selected target
2022-12-21 15:11:24 +01:00
hkalbasi
801a2231bf
Implement location link for type inlay hints
2022-12-21 02:18:02 +03:30
Maybe Waffle
874ff2bc9d
Skip adjustment hints if the adjustment doesn't adjust
2022-12-20 20:04:10 +00:00
Maybe Waffle
91a89efcf2
Save source & target types in hir
's expr_adjustments
2022-12-20 19:33:27 +00:00
bors
927d56a67d
Auto merge of #13764 - WaffleLapkin:badassexprs, r=Veykril
...
fix: Correctly check for parentheses redundancy in `remove_parentheses` assist
This is quite a bunch of code and some hacks, but I _think_ this time it's correct.
I've added a lot of tests, most of which fail with the assist impl from #13733 :')
2022-12-20 18:11:54 +00:00
bors
5c8f00f835
Auto merge of #13805 - ntBre:master, r=jonas-schievink
...
Complete enum variants without parens when snippets are disabled
This handles the portion of #13767 that bothered me, but I can try to work on the other parts we discussed if needed.
2022-12-20 17:58:41 +00:00
Brent Westbrook
694ae77bf6
pass snippet_cap
to format_literal_label
, return early if None
2022-12-20 11:27:19 -05:00
Brent Westbrook
1116cc93ec
return immediately from render_tuple_lit
if snippet_cap
is None
...
partially addresses #13767
2022-12-20 11:07:37 -05:00
Maybe Waffle
babd4c7f7d
Don't panic in Expr::needs_parens_in
2022-12-20 15:16:26 +00:00
Maybe Waffle
046a5679e3
Add docs to make tidy tests happy :')
2022-12-20 13:30:53 +00:00
Maybe Waffle
1c8bcf0d4e
Move inlay hints tests into implementation modules
2022-12-20 13:05:18 +00:00
Maybe Waffle
191cfba9d2
Split inlay hints into modules
2022-12-20 12:58:57 +00:00
Ryo Yoshida
e027ac0fbf
fix: don't let mbe expr fragments match let exprs and inline consts
2022-12-20 20:31:47 +09:00
Jonas Schievink
5706910add
Use the correct edition when formatting path deps
2022-12-19 17:53:56 +01:00
Jonas Schievink
c110481dd4
Reset parser step count when bumping
2022-12-19 16:27:00 +01:00
Lukas Wirth
cf8d89e46b
Add a command to clear flycheck diagnostics
2022-12-17 23:43:26 +01:00
Lukas Wirth
d8ddde27f9
Make cancelFlycheck request a notification
2022-12-17 23:29:31 +01:00
Lukas Wirth
cdfe98fe94
Make manual flycheck runs work when checkOnSave is disabled
2022-12-17 23:26:54 +01:00
bors
e0aa5afd7b
Auto merge of #13785 - Veykril:run-flycheck, r=Veykril
...
Add command for manually running flychecks
Closes https://github.com/rust-lang/rust-analyzer/issues/13125
2022-12-16 22:06:35 +00:00
Lukas Wirth
a04feb915a
Add command for manually running flychecks
2022-12-16 22:47:19 +01:00
bors
19c2ede549
Auto merge of #13784 - Veykril:bm-hints, r=Veykril
...
Deduplicate inserted parentheses in binding mode hints
2022-12-16 20:51:20 +00:00
Lukas Wirth
ba3e3282da
Deduplicate inserted parentheses in binding mode hints
2022-12-16 21:17:10 +01:00
bors
8f6d0cd1b0
Auto merge of #13783 - Veykril:bm-hints, r=Veykril
...
Add parentheses for binding mode hints when they attach to an Or-pattern
2022-12-16 19:53:06 +00:00
Lukas Wirth
b6c2bb21ab
Add parentheses for binding mode hints when they attach to an Or-pattern
2022-12-16 20:52:31 +01:00
Dezhi Wu
258e532434
docs: update the comment and add a test to half_open_range_pat
2022-12-16 10:44:25 +08:00
Dezhi Wu
6a295fcd3b
fix: add a check for if
token in patterns parser
...
Closes #13776
2022-12-15 12:46:02 +08:00
bors
16de9a7130
Auto merge of #13774 - lowr:fix/no-infer-vars-in-inference-result, r=Veykril
...
fix: resolve all inference vars in `InferenceResult::assoc_resolutions`
I think this fixes '#13773 , ~but still haven't found repro. I'll try finding one so we can have a regression test~.
We should resolve every inference variable in `InferenceResult` after inference is done. We started recording `Substitution`s for each resolved associated items in #13725 , but failed to do so which causes crash when analyzing source in IDE layer.
2022-12-14 14:27:32 +00:00
bors
fb4e9359d1
Auto merge of #13769 - jonas-schievink:parse-half-open-range-pat, r=jonas-schievink
...
feat: Parse half-open `..= X` patterns
Closes https://github.com/rust-lang/rust-analyzer/issues/13739
2022-12-14 14:14:46 +00:00
Ryo Yoshida
bb99d2a6fb
fix: resolve all inference vars in InferenceResult::assoc_resolutions
2022-12-14 23:07:43 +09:00
Jonas Schievink
9e0aaf4cf3
Parse ..= X
patterns
2022-12-13 17:32:25 +01:00