Laurențiu Nicola
6b53c09ef5
Merge branch 'master' into sync-from-rust
2023-11-15 09:46:27 +02:00
Laurențiu Nicola
610eafe009
Merge commit '76633199f4316b9c659d4ec0c102774d693cd940' into sync-from-rust
2023-11-15 09:45:17 +02:00
DropDemBits
3f99a56fae
Fix panic in add_type_ascription
...
Assist wasn't applicable when the let statement was missing a pattern
before, so we should do the same now.
2023-11-14 18:43:48 -05:00
Mine Starks
ec3f35bf63
Show placeholder while run command gets runnables from server
2023-11-14 14:39:17 -08:00
DropDemBits
df629627c5
Add tests for LetStmt::set_ty
2023-11-14 17:35:24 -05:00
bors
c1e65aa588
Auto merge of #15895 - Veykril:unsafe-impls-diagnostic, r=Veykril
...
Diagnose missing assoc items in trait impls
2023-11-14 21:11:23 +00:00
Lukas Wirth
723d799ec1
Diagnose missing assoc items in trait impls
2023-11-14 22:00:52 +01:00
bors
989000b8c5
Auto merge of #15893 - Veykril:unsafe-impls-diagnostic, r=Veykril
...
Diagnose incorrect unsafety for trait impls
2023-11-14 20:24:21 +00:00
Lukas Wirth
e21d21a8fb
Diagnose incorrect unsafety for trait impls
2023-11-14 21:05:27 +01:00
bors
6e4538a6e9
Auto merge of #15891 - Veykril:orphan-impls, r=Veykril
...
feat: Diagnose some orphan trait impl cases
2023-11-14 17:55:30 +00:00
Lukas Wirth
d5faad1dae
Fix inlay-hint tests being invalidated by minicore chanes
2023-11-14 18:53:48 +01:00
Lukas Wirth
6ddccc9a6e
Diagnose some orphan trait impl cases
2023-11-14 18:09:34 +01:00
Laurențiu Nicola
d45ff2484f
Depend on rustc_driver
2023-11-14 18:07:02 +02:00
Lukas Wirth
b74015512d
Remove UserError from LayoutError
2023-11-14 13:32:04 +01:00
Lukas Wirth
e844784d8d
Simplify
2023-11-14 12:53:14 +01:00
Jinoh Kang
0beba7cfc4
fix: Fix incorrectly replacing references in macro invocation in "Convert to named struct" assist
2023-11-14 16:01:59 +09:00
DropDemBits
787ca888e3
Add IdentPat::set_pat
...
Needed so that the `tuple_pat` node gets added to the syntax tree,
which is required as we're using structured snippets.
2023-11-13 20:41:06 -05:00
DropDemBits
6f68cd3394
Remove unwraps from destructure_tuple_binding
2023-11-13 18:42:58 -05:00
Laurențiu Nicola
b6951defa6
Add missing rustc_private features
2023-11-13 21:38:57 +02:00
Michael Schmidt
67058605d8
FIxed typo in highlight_related.rs
2023-11-13 13:13:39 +01:00
Young-Flash
3e5bc9a9c8
impl qualifying_trait
for PathSegment
2023-11-13 18:14:00 +08:00
bors
416e9c856a
Auto merge of #15881 - nokazn:docs/fix-vscode-setting-samples, r=lnicola
...
docs: fix VS Code setting samples
Fix invalid JSONC examples (missing double quotes) in VS Code's `settings.json` .
Thank you.
2023-11-12 17:07:42 +00:00
bors
4fc208e693
Auto merge of #15882 - Veykril:fix-config-keys, r=Veykril
...
minor: Fix import preference config keys
2023-11-12 16:50:10 +00:00
Lukas Wirth
d6b908ec41
Fix import preference config keys
2023-11-12 17:48:40 +01:00
bors
92d9ca7d64
Auto merge of #15876 - DropDemBits:lsp-ext-multiple-snippet-textedit, r=Veykril
...
minor: Allow multiple snippet edits in a `TextDocumentEdit`
Explicitly[^1] allow a single `TextDocumentEdit` to have multiple `SnippetTextEdit`s. This allows things like renaming extracted variables and functions without having to go through a separate rename step. For an example of what this looks like, see the video in [this comment](https://github.com/microsoft/vscode/issues/145374#issuecomment-1177341711 ).
The behavior described here lines up with [what VSCode does](bdc113ffe1/src/vscode-dts/vscode.d.ts (L3728-L3731)
), and presumably what the eventual LSP behavior will be.
[^1]: This was technically the case before #15269 , a single `TextDocumentEdit` always had multiple edits which were `InsertTextFormat.Snippet` as all of the edits were marked as being snippets, even if there weren't any tab stops or placeholders.
2023-11-12 15:20:42 +00:00
bors
8bfe0aaba9
Auto merge of #15880 - lnicola:vfs-toml, r=Veykril
...
internal: Include toml files in the vfs
Closes #15753
2023-11-12 15:04:02 +00:00
Laurențiu Nicola
bad3d9e766
Include toml files in the vfs
2023-11-12 16:45:47 +02:00
bors
1152f593b3
Auto merge of #15870 - lnicola:expand-macro, r=lnicola
...
minor: Make "Expand macro" command title more explicit
Closes [#15856 ](https://github.com/rust-lang/rust-analyzer/issues/15856 ).
I opted for "caret", since it's the better term (cursor is the mouse), but I'm not sure how popular it is these days.
2023-11-12 13:48:43 +00:00
Laurențiu Nicola
cace36cade
Make Expand macro command title more explicit
2023-11-12 11:43:46 +02:00
Young-Flash
23fde40fed
fix PathSegment
grammar
2023-11-12 11:20:14 +08:00
DropDemBits
1e4686865e
Allow multiple snippet edits in a TextDocumentEdit
2023-11-11 22:12:49 -05:00
DropDemBits
4aaa592a9a
Migrate destructure_tuple_binding
to mutable ast
...
Due to the way the current tree mutation api works, we need to collect
changes before we can apply them to the real syntax tree, and also can only
switch to a file once.
`destructure_tuple_binding_in_sub_pattern` also gets migrated even
though can't be used.
2023-11-11 21:07:19 -05:00
DropDemBits
f3dcc67dfa
Migrate add_type_ascription
2023-11-11 21:05:27 -05:00
DropDemBits
5fc8cc52e2
Add LetStmt::set_ty
...
Way for setting and removing the type ascription of a let stmt
2023-11-11 21:05:27 -05:00
DropDemBits
92422f7488
Use syntax's version of SyntaxElement
2023-11-11 21:05:27 -05:00
DropDemBits
cc4e06f04b
Migrate add_turbo_fish
to mutable ast
...
`add_type_ascription` is still left as-is since it's a different assist
2023-11-11 21:05:26 -05:00
DropDemBits
02c7b8b9ba
Add MethodCallExpr::get_or_create_generic_arg_list
...
Mirrors `PathSegment's` version, except that it always generates a
turbofish
2023-11-11 21:05:26 -05:00
nokazn
b6f0994ee6
docs: fix VS Code setting samples
2023-11-12 10:29:56 +09:00
bors
5fcf5289e7
Auto merge of #15871 - Veykril:import-map, r=Veykril
...
Add config for preferring / ignoring prelude modules in find_path
2023-11-11 15:05:08 +00:00
Lukas Wirth
74e5444f15
Fix some FIXMEs
2023-11-11 15:49:57 +01:00
Lukas Wirth
ba61766217
Add config for preferring / ignoring prelude modules in find_path
2023-11-11 14:56:38 +01:00
Lukas Wirth
801a887954
Record all import paths per item in ImportMap
2023-11-11 14:48:44 +01:00
Lukas Wirth
2339ba4440
Prepare ImportMap for supportin multiple import paths per item
2023-11-11 14:04:24 +01:00
Pascal Kuthe
0647b645cd
ensure renames happen after edit
2023-11-10 17:39:32 +01:00
bors
11a87c9179
Auto merge of #15866 - lnicola:include-check, r=Veykril
...
Improve check for include macro
https://github.com/rust-lang/rust-analyzer/pull/15819#pullrequestreview-1724883108
2023-11-10 15:12:29 +00:00
Laurențiu Nicola
9826717550
Improve check for include macro
2023-11-10 16:53:08 +02:00
bors
7cca4e5816
Auto merge of #15854 - alibektas:15782/relax_hidden_attr, r=lnicola
...
fix: Ignore doc(hidden) attr if no body is present
fixes #15782
2023-11-10 13:30:52 +00:00
bors
5afaf680b8
Auto merge of #15864 - Young-Flash:find_self, r=lnicola
...
fix: find `Self` reference
took a lot of time to debug to find the problem, here should compare the actual `Adt` type
close https://github.com/rust-lang/rust-analyzer/issues/12693
2023-11-10 13:13:14 +00:00
Young-Flash
e0276dc5dd
fix: find Self
reference
2023-11-10 19:54:43 +08:00
bors
76633199f4
Auto merge of #15860 - HKalbasi:fix-capture-raw-pointer, r=HKalbasi
...
Truncate closure capture place for raw pointer
fix https://github.com/rust-lang/rust-analyzer/issues/15670#issuecomment-1804070623
2023-11-09 17:53:52 +00:00