Shoyu Vanilla
8aa6c09fce
Remove has_default from FieldId
2025-01-27 19:41:58 +09:00
Shoyu Vanilla
b4d4d02db8
Compute diagnostics of a field body iff it has one
2025-01-27 19:41:57 +09:00
Shoyu Vanilla
c134b20c9c
Merge record lit's ellipsis into pre-existing spread's variant
2025-01-27 19:41:54 +09:00
Shoyu Vanilla
7de0b2e75a
feat: Implement default-field-values
2025-01-27 19:38:35 +09:00
Lukas Wirth
35b55fd67f
Merge pull request #19036 from Veykril/push-nprltlwvryxw
...
Split out `ExpressionStore` from `Body`
2025-01-27 07:54:44 +00:00
Chayim Refael Friedman
791b1ebfd4
Support RFC 2396
...
AKA. target_feature 1.1, or non unsafe target_feature.
2025-01-26 23:31:58 +02:00
Lukas Wirth
3bb0ff3480
Add GenericDefId::StaticId
2025-01-26 11:07:54 +01:00
Lukas Wirth
55d1d5dd8b
Split out ExpressionStore from Body
2025-01-26 11:02:00 +01:00
Lukas Wirth
fbf3d08a30
Merge pull request #19026 from Veykril/push-wrxrutptywzx
...
Only collect implicit visibile use symbols if they have renames
2025-01-25 10:27:26 +00:00
Lukas Wirth
7acf8dcf7b
Only collect implicit visibile use symbols if they have renames
...
Otherwise this will pollute the index too much with unnecessary symbols
2025-01-25 11:12:06 +01:00
Lukas Wirth
6e4c29f7ce
Merge pull request #19018 from Veykril/push-wxqqunxwrply
...
internal: Record the use tree index in glob imports
2025-01-24 14:27:49 +00:00
Lukas Wirth
a62e2f513a
Merge pull request #18991 from Veykril/push-rmqmnrymwmoz
...
Keep already computed inlay hint properties instead of late resolving them
2025-01-24 14:27:43 +00:00
Lukas Wirth
433888c4b2
Record the use tree index in glob imports
2025-01-24 15:12:48 +01:00
Lukas Wirth
93de80d833
Merge pull request #19016 from Veykril/push-moqnsytyrupu
...
fix: Fix `ItemScope` not recording glob imports
2025-01-24 13:25:39 +00:00
Lukas Wirth
3b88a2f134
Fix ItemScope not recording glob imports
...
This caused us other code to incorrectly assume in dealing with a declaration when in fact it was dealing with a glob imported definition
2025-01-24 14:11:45 +01:00
Lukas Wirth
831e3535e6
Fix Param::as_local treating closures wrong
2025-01-21 11:15:36 +01:00
Lukas Wirth
a3eee10638
Goto Display::fmt when invoked on to_string
2025-01-20 17:00:28 +01:00
Lukas Wirth
0fdab1be36
Bring back goto def redirect for parse -> FromStr
2025-01-20 16:32:17 +01:00
Lukas Wirth
03ea40369f
Move dual blanket impl logic from source analyzer to goto_def
2025-01-20 16:24:42 +01:00
Lukas Wirth
93a5846784
Merge pull request #18967 from Veykril/push-pwonkmwqmmol
...
Properly record meaningful imports as re-exports in symbol index
2025-01-20 13:46:52 +00:00
Lukas Wirth
b2f822b074
Merge pull request #18934 from 1hakusai1/goto_definition_from_into
...
feat: Add the ability to jump from `into` to `from` definitions
2025-01-20 13:46:47 +00:00
Lukas Wirth
a06606c802
Fix import search not discarding rawness
2025-01-20 14:29:11 +01:00
Lukas Wirth
0480ebef75
Preserve impl assoc names in ImplData
2025-01-20 14:29:11 +01:00
Lukas Wirth
76c1a376c3
Vec -> Box<[_]>
2025-01-20 14:29:11 +01:00
Lukas Wirth
51cc1a4614
Properly record meaningful imports as re-exports in symbol index
2025-01-20 14:29:11 +01:00
1hakusai1
5384dd8947
Use Semantics::resolve_method_call_as_callable to find implementation
2025-01-20 21:17:48 +09:00
Lukas Wirth
132a2a03c4
Merge pull request #18951 from Veykril/push-zpvunsvlpuxt
...
Add missing `#[rust_analyzer::rust_fixture]` annotations
2025-01-16 10:21:22 +00:00
Lukas Wirth
3361b5701a
Generalize some type walking in hover type actions
2025-01-16 11:06:11 +01:00
Lukas Wirth
24e1db2f0c
Minor docs improvement
2025-01-16 11:05:20 +01:00
Lukas Wirth
c7f187430f
Merge pull request #18927 from ChayimFriedman2/skip-iter-await
...
feat: Add smart completions that skip `await` or `iter()` and `into_iter()`
2025-01-16 08:47:26 +00:00
Chayim Refael Friedman
cec9fa1606
Add smart completions that skip await or iter() and into_iter()
...
E.g. complete `await.foo()`.
2025-01-15 22:32:07 +02:00
Lukas Wirth
1fc15e0673
Merge pull request #18940 from Veykril/push-ulowqkpprslq
...
fix: Fix semantics not always correctly caching file roots
2025-01-15 12:54:58 +00:00
Lukas Wirth
d32b09dc1b
fix: Fix semantics not always correctly caching file roots
2025-01-15 13:40:25 +01:00
Lukas Wirth
2a89e4a051
Early exit in search properly
2025-01-15 09:47:45 +01:00
Lukas Wirth
3bae1f0a1b
Improve hover module path rendering
2025-01-10 12:36:55 +01:00
Lukas Wirth
6f04f373d7
Merge pull request #18902 from Veykril/push-znlsxykqrkoo
...
internal: Add Definition::Crate
2025-01-10 10:01:43 +00:00
Lukas Wirth
e6270bd378
internal: Add Definition::Crate
...
This is its own thing so it should be handled specifically where possible
2025-01-10 10:45:44 +01:00
Chayim Refael Friedman
87f7a5849c
Remove two hir reexports
2025-01-10 03:19:28 +02:00
Lukas Wirth
3fe50ef83c
Merge pull request #18861 from ChayimFriedman2/await-edition
...
fix: Make edition per-token, not per-file
2025-01-09 10:20:11 +00:00
Chayim Refael Friedman
97afb7bfba
Make edition per-token, not per-file
...
More correctly, *also* per-token. Because as it turns out, while the top-level edition affects parsing (I think), the per-token edition affects escaping of identifiers/keywords.
2025-01-09 05:43:08 +02:00
Lukas Wirth
acccd4bde6
fix: Fix env/option_env macro check disregarding macro_rules definitions
2025-01-08 10:59:58 +01:00
Laurențiu Nicola
cd12ef8547
Merge pull request #18853 from ChayimFriedman2/no-completion
...
Fix case where completion inside macro that expands to `#[test]` was unavailable
2025-01-07 06:44:50 +00:00
Chayim Refael Friedman
b24142b50b
Fix case where completion inside macro that expands to #[test] was unavailable
...
We ignore `#[test]` in the def map, so that's why it failed.
2025-01-06 22:02:24 +02:00
Lukas Wirth
4b6007115a
minor: New clippy lints
2025-01-06 17:57:17 +01:00
Lukas Wirth
4d66fa797f
minor: Encode TraitData bools as bitflags
2025-01-03 12:46:07 +01:00
Lukas Wirth
7e639ee3dd
Merge pull request #18179 from ChayimFriedman2/omit-trait-completion
...
feat: Allow excluding specific traits from completion
2025-01-01 14:34:56 +00:00
Lukas Wirth
1adc805dfa
Cleanup
2025-01-01 15:21:54 +01:00
Lukas Wirth
c5bda0d3f7
Simplify completion config path resolutions
2025-01-01 14:32:45 +01:00
Chayim Refael Friedman
7e6ade117c
Allow excluding specific traits from completion
...
To be accurate, only their methods are excluded, the trait themselves are still available.
I also excluded a bunch of std traits by default. Some less opinionated, like `AsRef`, which should never be used directly except in generic scenarios (and won't be excluded there), some more opinionated, like the ops traits, which I know some users sometimes want to use directly. Either way it's configurable.
It should be pretty easy to extend support to excluding only specific methods, but I didn't do that currently.
Traits configured to be excluded are resolved in each completion request from scratch. If this proves too expensive, it is easy enough to cache them in the DB.
2025-01-01 13:49:35 +01:00
Lukas Wirth
a612fc9a16
Merge pull request #18757 from roife/fix-17812
...
feat: support updating snapshot tests with codelens/hovering/runnables
2025-01-01 12:44:55 +00:00