Commit graph

277561 commits

Author SHA1 Message Date
Chayim Refael Friedman
553d525f16 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
0f900e2428
Merge pull request #18923 from Veykril/push-oovkowowotqx
internal: Compute inlay hint tooltips lazily
2025-01-12 13:57:11 +00:00
Lukas Wirth
6766e6679d internal: Compute inlay hint tooltips lazily 2025-01-12 14:42:44 +01:00
Lukas Wirth
b1aa9fb017
Merge pull request #18921 from Veykril/push-zwullmxomvsm
internal: Compute inlay hint text edits lazily
2025-01-12 13:20:33 +00:00
Lukas Wirth
ed121ecc2a Fix text edits for discriminant hints 2025-01-12 14:04:35 +01:00
Lukas Wirth
b79da13a22 internal: Compute inlay hint text edits lazily 2025-01-12 14:00:37 +01:00
Lukas Wirth
139db0ae50
Merge pull request #18920 from Veykril/push-zxwtmooxumsl
fix: Fix `ref` text edit for binding mode hints
2025-01-12 12:28:57 +00:00
Lukas Wirth
ab9779b490 fix: Fix ref text edit for binding mode hints 2025-01-12 13:14:00 +01:00
Laurențiu Nicola
f00e5ca787
Merge pull request #18913 from Wilfred/grammar_fix
minor: Fix grammar in doc comments
2025-01-11 06:19:03 +00:00
Wilfred Hughes
442c4edb09 minor: Fix grammar in doc comments
"too" should be "to" here.
2025-01-10 17:38:14 -08:00
Lukas Wirth
6d05207cca
Merge pull request #18907 from Veykril/push-uqlzpttmvurv
Implement `#[rust_analyzer::skip]` for bodies
2025-01-10 13:59:23 +00:00
Lukas Wirth
a40bbcfdf8 Implement #[rust_analyzer::skip] for bodies 2025-01-10 14:41:27 +01:00
Lukas Wirth
b0eb548473
Merge pull request #18906 from Veykril/push-upuxsyovskmt
feat: Re-implement rust string highlighting via tool attribute
2025-01-10 13:38:43 +00:00
Lukas Wirth
a006eaba79 Re-implement rust string highlighting via tool attribute 2025-01-10 13:49:35 +01:00
Lukas Wirth
f513b27ed5
Merge pull request #18904 from Veykril/push-yztnorquuyzw
Improve hover module path rendering
2025-01-10 11:53:38 +00:00
Lukas Wirth
0a354a4025
Merge pull request #18903 from Veykril/push-mqmworppxuyw
Implement implicit sized bound inlay hints
2025-01-10 11:53:18 +00:00
Lukas Wirth
17a6f31738 Implement implicit sized bound inlay hints 2025-01-10 12:38:21 +01:00
Lukas Wirth
9a9b069fa5 Improve hover module path rendering 2025-01-10 12:36:55 +01:00
Lukas Wirth
65a97e6475
Merge pull request #18900 from ChayimFriedman2/stupid-hang
fix: Do not compute `prettify_macro_expansion()` unless the "Inline macro" assist has actually been invoked
2025-01-10 11:02:54 +00:00
Lukas Wirth
78213905bc
Merge pull request #18902 from Veykril/push-znlsxykqrkoo
internal: Add Definition::Crate
2025-01-10 10:01:43 +00:00
Lukas Wirth
c4ffd32ac4 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
Lukas Wirth
ab7f367f2a
Merge pull request #18901 from ChayimFriedman2/hir-reexport
minor: Remove two hir reexports
2025-01-10 06:57:18 +00:00
Lukas Wirth
5adca85d1b
Merge pull request #18813 from Giga-Bowser/syntax-tree-view
feat: Add a new and improved syntax tree view
2025-01-10 06:56:34 +00:00
Lukas Wirth
669d34da46
Merge pull request #18899 from ChayimFriedman2/issue-18898
fix: Fix another issue with fixup reversing
2025-01-10 06:55:45 +00:00
Chayim Refael Friedman
62a92b3840 Remove two hir reexports 2025-01-10 03:19:28 +02:00
Chayim Refael Friedman
c9f75a0b2f Do not compute prettify_macro_expansion() unless the "Inline macro" assist has actually been invoked
And not just called to be listed.

This was a major performance hang when repeatedly switching back-and-forth between a large `include!`d file (but there are others)..
2025-01-10 00:56:00 +02:00
Giga Bowser
56d06fb40f Add an action to copy an element from the syntax tree view 2025-01-09 14:03:18 -06:00
Chayim Refael Friedman
37b089d973 Fix another issue with fixup reversing
We need to *remove* the whole subtree, but we don't advance `i` by this, because it hasn't gotten there yet (and never will).
2025-01-09 22:02:44 +02:00
Giga Bowser
628db53612 Remove the old syntax tree viewer 2025-01-09 13:20:06 -06:00
Giga Bowser
78c377f956 Add a new and improved syntax tree viewer 2025-01-09 13:20:06 -06:00
Lukas Wirth
d1b9176f24
Merge pull request #18889 from ChayimFriedman2/subtle-completion
fix: Fix actual token lookup in completion's `expand()`
2025-01-09 12:12:38 +00:00
Lukas Wirth
e4708fec85
Merge pull request #18880 from PrototypeNM1/extra-includes
Add config setting which allows adding additional include paths to the VFS.
2025-01-09 10:24:51 +00:00
Lukas Wirth
f6e8974fa8
Merge pull request #18861 from ChayimFriedman2/await-edition
fix: Make edition per-token, not per-file
2025-01-09 10:20:11 +00:00
Lukas Wirth
f4ecc34aa7
Merge pull request #18885 from qjerome/refactor-cargo-cfgs
refactor: struct holding cargo cfgs settings
2025-01-09 10:19:55 +00:00
Lukas Wirth
85310c4f25
Merge pull request #18890 from Veykril/push-nwnozlyppvzo
minor: Fixup macro error kinds
2025-01-09 08:54:05 +00:00
Lukas Wirth
cd60477dc8 minor: Fixup macro error kinds 2025-01-09 09:38:58 +01:00
Lukas Wirth
547a12e323
Merge pull request #18887 from vishruth-thimmaiah/refactor_completions_tests
refactor test helpers within ide-completions
2025-01-09 08:15:53 +00:00
Lukas Wirth
fbc1d511e9
Merge pull request #18524 from Giga-Bowser/migrate-wrap-unwrap-return
internal: Migrate `(un)wrap_return_type` assists to use `SyntaxEditor`
2025-01-09 07:05:48 +00:00
Chayim Refael Friedman
89a72c78fc 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
Chayim Refael Friedman
13e302c324 Fix actual token lookup in completion's expand()
It should be left biased, not right biased, because when e.g. the use has typed `h` then requested completion, the `h` is what we want to find, not the next token (which might indeed be inside a macro call).

I'm not sure why I wrote `right_biased()` to begin with (I remember I had a reason and not just "both should work"), I might've copied the code in `expand_and_analyze()` (which is wrong, because there it lookups on the speculative file, where right biased will always find the correct token and left biased not).

This is still not perfect, because there might not be an identifier already typed then we might still end up in a macro call, but this is the best we can do.
2025-01-09 05:22:14 +02:00
Giga Bowser
3d6c2f2ea1 minor: Use placeholders in unwrap_return_type 2025-01-08 18:12:06 -06:00
Giga Bowser
9b6b629334 internal: Migrate unwrap_return_type assist to use SyntaxEditor
Also changes `make::expr_empty_block()` to return `ast::BlockExpr` instead of `ast::Expr`
2025-01-08 18:12:06 -06:00
Giga Bowser
4001c468dd internal: Migrate wrap_return_type assist to use SyntaxEditor 2025-01-08 15:19:10 -06:00
Nicholas Rishel
253bba044e Add config setting which allows adding additional include paths to the VFS. 2025-01-08 10:57:46 -08:00
Vishruth-Thimmaiah
8d1ae29294
refactor test helpers within ide-completions 2025-01-08 23:51:18 +05:30
qjerome
93d08b7c77
fix: requested changed 2025-01-08 14:47:46 +01:00
qjerome
c59ecb3af4
fix: autogenerate files 2025-01-08 14:47:21 +01:00
qjerome
2be4ce099d
refactor: struct holding cargo cfgs settings 2025-01-08 11:20:08 +01:00
Lukas Wirth
8982535dc2
Merge pull request #18884 from Veykril/push-xwqkorxozzkq
fix: Fix `env`/`option_env` macro check disregarding macro_rules definitions
2025-01-08 10:14:51 +00:00
Lukas Wirth
bc1a7fa834 fix: Fix env/option_env macro check disregarding macro_rules definitions 2025-01-08 10:59:58 +01:00