Florian Diebold
60aeb8fa1a
Move fallback_bound_vars to the only place it's used now
2022-03-17 17:08:43 +01:00
Florian Diebold
9ea2e0bd5b
Fixes for consts
2022-03-17 17:04:32 +01:00
Florian Diebold
59b5696aaa
Snapshot obligations
2022-03-17 17:04:32 +01:00
Florian Diebold
8f5b6ac556
Properly try unifying the receivers during method resolution
...
Instead of hackily checking if they're equal.
2022-03-17 17:03:54 +01:00
hi-rustin
bc8665e14d
Fix typo
...
Signed-off-by: hi-rustin <rustin.liu@gmail.com >
2022-03-17 22:59:47 +08:00
Florian Diebold
1b71cd074d
Add test for DynMap type inference
2022-03-17 15:44:14 +01: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
bors[bot]
631b504991
Merge #11741
...
11741: Emit #[must_use] in Generate enum is_variant assist r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro >
2022-03-17 13:23:22 +00:00
bors[bot]
0a18e4355a
Merge #11740
...
11740: Insert #[must_use] in generate_is_empty_from_len r=lnicola a=Walther
Inserts `#[must_use]` for the generated `is_empty` methods. I also added the `#[must_use]` for the `len()` methods in the documentation examples and tests for this generator while at it, to make sure they too encourage the use of the annotation.
From discussion in https://github.com/rust-analyzer/rust-analyzer/issues/11736 and https://github.com/rust-analyzer/rust-analyzer/pull/11738
Co-authored-by: Walther <veeti.haapsamo@gmail.com >
2022-03-17 13:14:26 +00:00
Laurențiu Nicola
de53232ada
Emit #[must_use] in Generate enum is_variant assist
2022-03-17 15:10:25 +02:00
Walther
217b30568e
Insert #[must_use] in generate_is_empty_from_len
2022-03-17 15:03:02 +02:00
bors[bot]
502e30e676
Merge #11737 #11739
...
11737: Emit `#[must_use]` in `Generate new` assist r=lnicola a=lnicola
Closes #11736
11739: Insert #[must_use] in generate_getter r=lnicola a=Walther
Inserts `#[must_use]` for the generated getter methods.
From discussion in https://github.com/rust-analyzer/rust-analyzer/issues/11736 and https://github.com/rust-analyzer/rust-analyzer/pull/11738
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro >
Co-authored-by: Walther <veeti.haapsamo@gmail.com >
2022-03-17 12:58:14 +00:00
Walther
e5adbd88e9
Insert #[must_use] in generate_getter
2022-03-17 14:49:22 +02: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
hi-rustin
37d0c722ef
Complete associated consts in patterns
...
Signed-off-by: hi-rustin <rustin.liu@gmail.com >
2022-03-17 20:35:04 +08:00
Laurențiu Nicola
7e05e10495
Emit #[must_use] in Generate new assist
2022-03-17 14:21:42 +02:00
bors[bot]
98143da799
Merge #11735
...
11735: Fix const generic panic, again r=lnicola a=HKalbasi
fix https://github.com/rust-analyzer/rust-analyzer/pull/11734#issuecomment-1070526085
Co-authored-by: hkalbasi <hamidrezakalbasi@protonmail.com >
2022-03-17 09:23:26 +00:00
hkalbasi
0141f28475
fix regression_11688_2
2022-03-17 12:47:31 +03:30
bors[bot]
3bff42fd14
Merge #11734
...
11734: internal: Bump `xshell` and fix `dist` r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro >
2022-03-17 06:54:27 +00:00
Laurențiu Nicola
be6d5001e4
Bump xshell and fix dist
2022-03-17 08:53:33 +02:00
bors[bot]
b3cfa1986b
Merge #11731
...
11731: feat: Add return type hints for closures with block bodies r=Veykril a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/11386
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com >
2022-03-16 20:31:47 +00:00
Lukas Wirth
bd17933c31
feat: Add return type hints for closures with block bodies
2022-03-16 21:25:03 +01:00
bors[bot]
29e38513cd
Merge #11727
...
11727: minor: Fix metrics.json path r=lnicola a=lnicola
CC https://github.com/rust-analyzer/rust-analyzer/pull/11724#issuecomment-1069047929
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro >
2022-03-16 19:56:31 +00:00
Laurențiu Nicola
8f99c93f0f
Fix metrics.json path
2022-03-16 18:43:56 +02:00
bors[bot]
a57fee6b6f
Merge #11694
...
11694: fix: "Extract to function" assist preserves `break` and `continue` labels r=Veykril a=m0rg-dev
Adds a label / lifetime parameter to `ide_assists::handlers::extract_function::FlowKind::{Break, Continue}`, adds support for emitting labels to `syntax::ast::make::{expr_break, expr_continue}`, and implements the required machinery to let `extract_function` make use of them.
This does modify the external API of the `syntax` crate, but the changes there are simple, not used outside `ide_assists`, and, well, we should probably support emitting `break` and `continue` labels through `syntax` anyways, they're part of the language spec.
Closes #11413 .
Co-authored-by: Morgan Thomas <corp@m0rg.dev >
2022-03-16 16:35:34 +00:00
bors[bot]
641c6e5b32
Merge #11726
...
11726: internal: More ide_completion refactoring r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com >
2022-03-16 16:04:10 +00:00
Lukas Wirth
a40a847d77
Revert omitting field completions
2022-03-16 16:41:35 +01:00
Lukas Wirth
c1f6f135e1
Remove code duplication
2022-03-16 16:32:36 +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]
c1cf2ef6f4
Merge #11724
...
11724: minor: unblock metrics r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com >
2022-03-16 11:12:09 +00:00
Lukas Wirth
46008d4cf4
minor: unblock metrics
2022-03-16 12:11:21 +01:00
bors[bot]
9f2b4ef0f4
Merge #11720
...
11720: fix: Mark chaining hints as types r=SomeoneToIgnore a=lnicola
CC https://github.com/rust-analyzer/rust-analyzer/pull/11445#discussion_r826863321
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro >
2022-03-16 06:32:33 +00:00
Laurențiu Nicola
620411df80
Mark chaining hints as types, since that's what they are
2022-03-16 07:46:09 +02:00
bors[bot]
fb9e66d9fc
Merge #11718
...
11718: Fix const generic panic r=lnicola a=HKalbasi
fix https://github.com/rust-analyzer/rust-analyzer/pull/11688#issuecomment-1066824954
Co-authored-by: hkalbasi <hamidrezakalbasi@protonmail.com >
2022-03-15 20:27:51 +00:00
hkalbasi
1f3d18718c
fix const generic panic
2022-03-15 22:34:05 +03:30
bors[bot]
7308b3ef41
Merge #11708
...
11708: Update manual for inlay hint customization r=Veykril a=ian-h-chamberlain
Related to #6405 , #6883 but not sure if they should be closed or not as this is just a documentation update.
This functionality was changed as of #11445 and now can be customized using native VSCode settings instead of `rust-analyzer`-specific ones.
Co-authored-by: Ian Chamberlain <ian-h-chamberlain@users.noreply.github.com >
2022-03-15 18:05:27 +00: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
bors[bot]
88ade42039
Merge #11710
...
11710: editors/code: fix crash due to missing ID= field r=lnicola a=cab404
Assuming ID=linux by default.
Also removed toLowerCase — it really shouldn't be needed.
Fixes #11709
Co-authored-by: Vladimir Serov <me@cab404.ru >
2022-03-15 07:27:05 +00:00
Vladimir Serov
f7cf3b5503
editors/code: fix crash due to missing ID= field
...
Assuming ID=linux in isNixOs by default. You can get away with
default "", but why do that if there's a default value in spec?)
Also removed toLowerCase — it really shouldn't be needed.
Fixes #11709
2022-03-15 07:11:24 +03:00
Ian Chamberlain
606ac3e73a
Update manual for inlay hint customization
...
Closes #6883
This functionality was changed as of #11445 and now can be customized using native VSCode settings instead of `rust-analyzer`-specific ones.
2022-03-14 17:21:36 -04:00
bors[bot]
683fea4de4
Merge #11707
...
11707: minor: Simplify r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com >
2022-03-14 20:05:46 +00:00
Lukas Wirth
fbc1d2a514
Simplify
2022-03-14 20:36:35 +01:00
bors[bot]
83575c96ed
Merge #11700
...
11700: ⬆️ xshell r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com >
2022-03-14 15:02:34 +00:00
Aleksey Kladov
56e43c34e7
⬆️ xshell
2022-03-14 14:57:24 +00:00
bors[bot]
20fa7cbcad
Merge #11688
...
11688: Add const generics r=HKalbasi a=HKalbasi
#7434 is not in this PR, so there is no evaluation of constants and no default const argument. But the rest (type inference and method resolution with chalk) should work.
Chalk is pedantic about kind of generic arguments, and will panic in case of mixing type and const arguments. I tried to add test that, but I'm not sure if it covers all cases.
Co-authored-by: hkalbasi <hamidrezakalbasi@protonmail.com >
2022-03-14 11:15:00 +00:00
hkalbasi
b301b040f5
Add const generics
2022-03-14 14:38:37 +03:30
Steven Joruk
1981a3dc65
test: Make imported_external test that the full path is replaced
2022-03-13 13:25:06 +00:00