bors
11b401d0b4
Auto merge of #16447 - Veykril:mir-errors, r=Veykril
...
intenral: Cleanup error variants in MIR code a bit
2024-01-30 11:38:41 +00:00
bors
22b6f9679d
Auto merge of #16439 - wasd96040501:feat/gotodef3, r=Veykril
...
feat: Support for GOTO def from *inside* files included with include! macro
close #14937
Try to implement goto def from *inside* files included with include! macro.
This implementation has two limitations:
1. Only **one** file which calls include! will be tracked. (I think multiple file be included is a rare case and we may let it go for now)
2. Mapping token from included file to macro call file (semantics.rs:646~658) works fine but I am not sure is this the correct way to implement.
2024-01-30 11:27:18 +00:00
Lukas Wirth
5860763f18
Cleanup error variants in MIR code slightly
2024-01-30 09:53:39 +01:00
YangzeLuo
b22e772cab
feat: Support for GOTO def from *inside* files included with include! macro
2024-01-27 23:36:01 +08:00
Lukas Wirth
6cf7b5f8d7
Don't parse intra doc links as syntax trees
2024-01-26 20:00:47 +01:00
Lukas Wirth
5a343415e8
Add some size assertions
2024-01-26 19:28:39 +01:00
Johann Hemmann
71d4dba960
redundant_pattern_matching
2024-01-19 17:31:01 +01:00
Johann Hemmann
5a62a0db46
redundant_closure
2024-01-19 17:31:01 +01:00
Johann Hemmann
3cf1358eb8
question_mark
2024-01-19 17:31:01 +01:00
Johann Hemmann
692212bbdd
partialeq_to_none
2024-01-19 17:31:01 +01:00
Johann Hemmann
e58b683201
needless_return
2024-01-19 17:31:01 +01:00
Johann Hemmann
3839f9a9a2
needless_borrow
2024-01-19 17:31:01 +01:00
Johann Hemmann
add40c8660
match_like_matches_macro
2024-01-19 17:31:01 +01:00
Johann Hemmann
8982ff3bba
get_first
2024-01-19 17:31:01 +01:00
Johann Hemmann
eb7aec5a8e
map_clone
2024-01-19 17:31:01 +01:00
Johann Hemmann
c629ec7611
clone_on_copy
2024-01-19 17:31:01 +01:00
Johann Hemmann
6a2a603a8c
let_and_return
2024-01-19 17:31:00 +01:00
Johann Hemmann
d8ad4afce8
manual_map
2024-01-19 17:31:00 +01:00
Johann Hemmann
3409645c3f
bind_instead_of_map
2024-01-19 17:31:00 +01:00
Lukas Wirth
83591268ab
minor: Make use of some new SmolStr
improvements
2024-01-17 13:47:15 +01:00
Lukas Wirth
82e8355492
feat: Show notable trait impls on hover
2024-01-16 19:17:33 +01:00
Lukas Wirth
384488c157
feat: Hover for literals showing additional value information
2024-01-16 14:28:47 +01:00
Lukas Wirth
8f4f5a6cce
fix: Make value_ty query fallible
2024-01-16 12:09:40 +01:00
Lukas Wirth
54f2111f69
internal: Make data queries transparent over their diagnostics variant
2024-01-16 10:47:54 +01:00
bors
5df53c9612
Auto merge of #16351 - Veykril:eager-enum-variant, r=Veykril
...
internal: Eagerly lower enum variants in CrateDefMap construction
2024-01-16 08:39:13 +00:00
Moritz Hedtke
fe35447617
fix: rename generator to coroutine also in dependencies
...
Follow the rename in nightly (see https://blog.rust-lang.org/inside-rust/2023/10/23/coroutines.html )
2024-01-15 12:24:48 +01:00
Lukas Wirth
180e9b2bbf
Cleanup
2024-01-15 12:22:51 +01:00
Lukas Wirth
1669344b2a
Thinner DefDiagnostics
2024-01-15 11:07:26 +01:00
Lukas Wirth
2d72ec71ec
Deduplicate
2024-01-15 10:58:05 +01:00
Lukas Wirth
d80d2fcae0
Eagerly lower enum variants in CrateDefMap construction
2024-01-15 10:24:14 +01:00
Lukas Wirth
b6e6d5d3af
internal: Consider all kinds of explicit private imports in find_path
2024-01-11 12:22:04 +01:00
Lukas Wirth
4d3a0dc329
Replace SourceRootCrates hashset output with slice for deterministic order
2024-01-10 14:51:51 +01:00
Lukas Wirth
4e16e0f2c1
Don't allocate DefDatabase::crate_lang_items
if its empty
2024-01-09 21:06:21 +01:00
Lukas Wirth
9673915045
Make DefDatabase::lang_attr
transparent
2024-01-09 20:52:10 +01:00
Matthias Krüger
3fb2cd2002
autofix remaining perf findings
2024-01-07 01:20:20 +01:00
Matthias Krüger
b22bd36f6e
remove more redundant clones manually
2024-01-07 00:26:49 +01:00
Matthias Krüger
476e10e961
remove redundant clones
2024-01-07 00:17:48 +01:00
Lukas Wirth
5ac0c14384
Remove some vec clones in const-eval
2024-01-06 21:33:47 +01:00
Lukas Wirth
963568b46f
feat: IDE features for primitive tuple fields
2024-01-06 15:04:58 +01:00
bors
11b0126679
Auto merge of #16267 - Veykril:import-map-fix, r=Veykril
...
internal: Deduplicate some code
2024-01-05 10:43:52 +00:00
Lukas Wirth
d60638e5e6
Deduplicate some code
2024-01-05 11:34:18 +01:00
bors
c84352a346
Auto merge of #16261 - Veykril:import-map-fix, r=Veykril
...
internal: Move query limits to the caller
Prior we calculated up to `limit` entries from a query, then filtered from that leaving us with less entries than the limit in some cases (which might give odd completion behavior due to items disappearing). This changes it so we filter before checking the limit.
2024-01-04 18:27:38 +00:00
Lukas Wirth
0af780ea3e
Fix symbol_index::Query::search_maps not adhering to case-sensitivity correctly
2024-01-04 19:12:56 +01:00
Lukas Wirth
751d9d11e0
Add proc-macro-test crate back to the main workspace
2024-01-04 11:09:45 +01:00
Grégoire Geis
fe6f931ac2
hir: resolve associated items in docs (excl. type aliases)
2024-01-03 23:04:24 +09:00
bors
426d2842c1
Auto merge of #16222 - rosefromthedead:unresolved-assoc-item, r=Veykril
...
add unresolved-assoc-item assist
I tried to copy from private-assoc-item for this
2024-01-02 15:06:13 +00:00
bors
86e559bf3f
Auto merge of #16211 - tetsuharuohzeki:update-lint, r=Veykril
...
Use Cargo's [workspace.lints.*] to config clippy
This change begin to use [`[workspace.lints.*]`](https://doc.rust-lang.org/cargo/reference/workspaces.html#the-lints-table ) that is stabilized since [Rust 1.74](https://blog.rust-lang.org/2023/11/16/Rust-1.74.0.html ).
By this change, we make the configure more readable and simplify `xargo lint` more.
2024-01-02 14:53:22 +00:00
bors
df94a87ea8
Auto merge of #16139 - jimmyhmiller:master, r=Veykril
...
Make functions in impl have a container name
fixes #16015
2024-01-02 14:08:37 +00:00
bors
f7a29e4e88
Auto merge of #16100 - Young-Flash:assoc_func_quickfix, r=Veykril
...
feat: add assoc func quickfix for `unresolved_method` diagnostic
![demo](https://github.com/rust-lang/rust-analyzer/assets/71162630/1ea1d8b8-3436-4251-a512-e0f9de01a13c )
close https://github.com/rust-lang/rust-analyzer/issues/13247
EDIT: I think add a demo gif would be helpful to `@lnicola` when he make a release change log :)
2024-01-02 13:46:35 +00:00
Luiz Carvalho
ed216e285d
fix(completion): make the expected type a tad smarter with Fn
s
...
This commit changes how the expected type is calculated when working
with Fn pointers, making the parenthesis stop vanishing when completing
the function name.
I've been bugged by the behaviour on parenthesis completion for a long
while now. R-a assumes that the `LetStmt` type is the same as the
function type I've just written. Worse is that all parenthesis vanish,
even from functions that have completely different signatures. It will
now verify if the signature is the same.
While working on this, I noticed that record fields behave the same, so
I also made it prioritize the field type instead of the current
expression when possible, but I'm unsure if this is OK, so input is
appreciated.
ImplTraits as return types will still behave weirdly because lowering is
disallowed at the time it resolves the function types.
2024-01-02 10:28:49 -03:00