Ali Bektas
423b00a83a
Deunwrap remove_unused_imports
2023-08-10 01:22:26 +02:00
bors
b78d69c795
Auto merge of #15422 - Veykril:import-sources, r=Veykril
...
internal: Record import source IDs
cc https://github.com/rust-lang/rust-analyzer/issues/14079
2023-08-09 15:09:15 +00:00
Lukas Wirth
63aba76735
Remove unnecessary ItemTreeId field in ImportSource
2023-08-09 17:06:52 +02:00
bors
b6ee96c3b5
Auto merge of #15423 - alibektas:deunwrap/convert_named_struct_to_tuple_struct, r=lnicola
...
internal : Deunwrap convert_named_struct_to_tuple_struct
Replaces `unwrap`s with `?` for the mentioned assist.
2023-08-09 14:52:09 +00:00
Ali Bektas
4e4dda5f59
Deunwrap convert_named_struct_to_tuple_struct
2023-08-09 16:40:23 +02:00
Lukas Wirth
c516dd51e9
Simplify
2023-08-09 15:54:10 +02:00
Lukas Wirth
992b928a93
Record import source IDs
2023-08-09 15:20:42 +02:00
bors
4bed01c36e
Auto merge of #15421 - Veykril:workspace-loading, r=Veykril
...
internal: More error context when failing to invoke the rust toolchain
2023-08-09 12:10:21 +00:00
Lukas Wirth
18b24f60d0
More error context when failing to invoke the rust toolchain
2023-08-09 14:09:37 +02:00
bors
fc2f90e0e5
Auto merge of #15419 - HKalbasi:mir, r=HKalbasi
...
Add mir lower support for tuple destructing assignment
And some other changes in mir eval
2023-08-08 21:02:57 +00:00
hkalbasi
021802c59c
Support enum in memory map patch address
2023-08-09 00:27:23 +03:30
bors
ddbbd6a7e7
Auto merge of #15417 - lowr:patch/purge-generic-arg-data-in-expr, r=HKalbasi
...
internal: use `Cast::cast()` instead of explicit interning
I firmly believe that we should generally use `cast()` instead of interning `GenericArgData` to construct `GenericArg` because it's less verbose and more readable.
2023-08-08 19:27:18 +00:00
bors
e13fac379e
Auto merge of #15262 - adamse:master, r=HKalbasi
...
add check.ignore to list cargo check diagnostics to ignore (dead_code, unused_imports, ...)
fixes #14798
2023-08-08 18:49:45 +00:00
oxalica
3bfe1d5d78
Display fully qualified associated types correctly
...
Currently they are formatted in the internal `Trait<Self = Type>::Assoc`
forms where `hir_ty::TypeRef` is formatted, like hover.
2023-08-09 00:04:55 +08:00
Ryo Yoshida
6aa03c5d15
Use Cast::cast()
instead of interning GenericArgData
2023-08-09 00:47:29 +09:00
bors
af4ba46b40
Auto merge of #15405 - lowr:patch/doc-links-to-fields, r=Veykril
...
Support doc links that resolve to fields
Fixes #15331
Also removes `Resolver::resolve_module_path_in_trait_assoc_items()` and reimplements it in hir with other `Resolver` methods to decouple things a bit.
2023-08-08 14:13:27 +00:00
bors
783130bd26
Auto merge of #15250 - lowr:fix/extract-fn-no-control-flow-with-tail-expr, r=Veykril
...
fix: don't use control flow when extracted fn contains tail expr of original fn
Fixes #10113
Fixes #15061
2023-08-08 13:38:49 +00:00
bors
f98d654ddf
Auto merge of #15350 - max-heller:issue-11756, r=Veykril
...
Handle `#[cfg]`s on generic parameters
Records attributes on generic parameters in the item tree and filters out generic parameters disabled by `#[cfg]`s in `generic_params_query`.
Closes #11756
2023-08-08 13:05:26 +00:00
Lukas Wirth
cba39f8553
fix: Fix float parser hack creating empty NameRef tokens
2023-08-08 14:44:33 +02:00
Adam Sandberg Ericsson
9cb1f45e6f
add check.ignore to list cargo check diagnostics to ignore (dead_code, unused_imports, ...)
...
fixes #14798
2023-08-08 14:28:35 +02:00
hkalbasi
31c30933cf
Support closure in clone shim
2023-08-08 01:49:34 +03:30
hkalbasi
b96e4f2f4a
Add mir lower support for tuple destructing assignment
2023-08-07 02:12:35 +03:30
Ryo Yoshida
582917453b
Don't provide generate_default_from_new
when impl self ty is missing
...
Also don't provide the assist when the `Default` trait can't be found.
2023-08-07 03:23:41 +09:00
Ryo Yoshida
0c433c23b1
Support doc links that resolve to fields
2023-08-07 00:59:35 +09:00
hkalbasi
9b636e2326
Support libc::getenv
in mir interpreter
2023-08-06 01:46:29 +03:30
bors
70fa270637
Auto merge of #15401 - Veykril:disabled-proc-macro, r=Veykril
...
internal: Turn unresolved proc macro expansions into missing expressions
Reduces the amount of type related errors one gets when proc macro expansion is disabled.
2023-08-05 18:01:46 +00:00
Lukas Wirth
042be329a7
Turn unresolved proc macro expansions into missing expressions
2023-08-05 20:00:37 +02:00
Laurențiu Nicola
622b18e579
Remove unwraps from Generate delegate trait
2023-08-05 19:23:56 +03:00
Max Heller
50db877bfa
optimization and #[cfg] filtering for function generic params
2023-08-05 08:00:39 -04:00
Wilfred Hughes
edabffbd5a
SCIP: Qualify parameters by the containing function
...
SCIP requires symbols to be unique, but multiple functions may have a
parameter with the same name. Qualify parameters according to the
containing function.
2023-08-04 16:38:31 -07:00
hkalbasi
cc5664c5a2
Add rustc comment into while desugaring
2023-08-04 16:35:13 +03:30
hkalbasi
3115d6988f
Improve mir interpreter performance by caching
2023-08-04 16:05:54 +03:30
bors
e37ec7262c
Auto merge of #15373 - tadeokondrak:desugar-while-to-loop, r=HKalbasi
...
internal: Desugar while to loop and break
I was reading through rust-analyzer's code and was wondering why this wasn't desugared into a loop.
2023-08-04 07:26:18 +00:00
bors
d398ad3326
Auto merge of #15380 - HKalbasi:mir, r=HKalbasi
...
Fix unsized struct problems in mir eval
2023-08-02 14:28:41 +00:00
hkalbasi
6990d0f26a
Fix unsized struct problems in mir eval
2023-08-02 17:36:11 +03:30
bors
2f2cf21da5
Auto merge of #15348 - max-heller:issue-14692, r=lowr
...
Exclude non-identifier aliases from completion filtering text
When building `CompletionItem`s, this excludes aliases that aren't valid identifiers from the "lookup" text used to filter completions in the LSP client. Including them results in weird completion filtering behavior e.g. `Partial>` matching a completion for the `PartialOrd` trait because it has a doc alias of ">".
Closes #14692
2023-08-02 13:39:58 +00:00
Max Heller
3205ed7a41
simplify storing generic parameter attributes in item tree
2023-08-02 09:19:56 -04:00
Lukas Wirth
ecb6d07d57
Add currently unused UseId variants
2023-08-02 14:53:45 +02:00
Lukas Wirth
f86f6a89eb
Change terminology, do not name use items and use trees as imports
2023-08-02 14:19:38 +02:00
bors
12cb6e7327
Auto merge of #15377 - Veykril:extern-crate-decl, r=Veykril
...
Add ExternCrateDecl to HIR
Adding these doesn't really require much design effort as they represent a single import, unlike use trees which are one item that represent 0 or more imports.
We only resolve to this definition when actually resolving on the name or alias of an `extern crate name as alias` item, not usages yet as that requires far more changes that won't lead anywhere without giving it more thought. Nevertheless the changes slightly improve IDE things, an example being hover on the decl showing the merged doc comments for example.
cc https://github.com/rust-lang/rust-analyzer/issues/14079
2023-08-02 10:27:30 +00:00
Lukas Wirth
6e2c3f610b
Remove suspicious unwrap
2023-08-02 12:18:10 +02:00
Lukas Wirth
bcff166b3a
Add ExternCrateDecl to HIR
2023-08-02 11:52:55 +02:00
bors
8e18b0f28c
Auto merge of #15376 - Veykril:match-to-matches, r=Veykril
...
Allow match to matches assist to trigger on non-literal bool arms
2023-08-02 08:18:43 +00:00
Tadeo Kondrak
92a97c292a
hir: Remove Expr::While
...
The previous commit desugared it to a loop.
2023-08-01 19:08:16 -06:00
Tadeo Kondrak
31bcba84f9
hir: Desugar while
to loop
and break
2023-08-01 19:04:36 -06:00
Max Heller
a743903cf0
remove unicode-ident dependency
2023-08-01 18:18:12 -04:00
Lukas Wirth
75607fc34c
Simplify
2023-08-01 17:47:52 +02:00
bors
151c750dac
Auto merge of #15367 - Veykril:eager-macro-inputs, r=Veykril
...
fix: Strip unused token ids from eager macro input token maps
2023-08-01 11:23:02 +00:00
Lukas Wirth
a5059da57a
Update test fixture
2023-08-01 13:13:56 +02:00
Lukas Wirth
e14d84d0a6
Skip out on single-segment immediate macro resolution when there are errors
2023-08-01 12:38:53 +02:00