Chayim Refael Friedman
c6ef51e550
Switch to home-made db attaching infrastructure
...
Instead of using Salsa's, as we can no longer can a `dyn HirDatabase` from the `dyn salsa::Database` Salsa provides.
2025-10-05 09:55:50 +03:00
Chayim Refael Friedman
d1288f6353
Migrate inference to next solver
2025-09-30 13:10:59 +03:00
Jack Huey
73a401301d
Remove lower::value_ty in favor of lower_nextsolver::value_ty
2025-09-23 03:58:51 -04:00
Jack Huey
c2513538cd
Add 'db to TraitEnvironment
2025-09-23 00:04:57 +00:00
Wilfred Hughes
bca5d59627
Remove support for register_attr
...
This was removed in rustc in 2022: https://github.com/rust-lang/rust/pull/101123
Closes #20525 .
2025-09-08 15:56:56 +01:00
Chayim Refael Friedman
1efff4677e
In highlight_related, when on an unsafe block, don't highlight unsafe operations of other unsafe blocks
2025-08-26 21:46:04 +03:00
jackh726
f9d2d2dd87
Switch associated_type_shorthand_candidates to lower_nextsolver
2025-08-17 16:04:50 +00:00
Deadbeef
82f174fbd9
Merge Trait and TraitAlias handling
2025-08-13 15:28:08 +08:00
Lukas Wirth
8ce30264c8
cargo clippy --fix
2025-07-31 10:55:10 +02:00
Shoyu Vanilla
e587367b4d
fix: Apply adjusts to pats and exprs when doing pat analysis
2025-07-22 01:18:48 +09:00
Chayim Refael Friedman
4b29a9d6ea
Merge pull request #20219 from ChayimFriedman2/expr-store-mem
...
metrics / build_metrics (push) Waiting to run
metrics / generate_final_metrics (push) Blocked by required conditions
metrics / other_metrics (diesel-1.4.8) (push) Blocked by required conditions
metrics / other_metrics (hyper-0.14.18) (push) Blocked by required conditions
metrics / other_metrics (ripgrep-13.0.0) (push) Blocked by required conditions
metrics / other_metrics (self) (push) Blocked by required conditions
metrics / other_metrics (webrender-2022) (push) Blocked by required conditions
rustdoc / rustdoc (push) Waiting to run
perf: Put the expression stuff in the expression store behind an `Option<Box>`
2025-07-11 14:25:39 +00:00
Shoyu Vanilla (Flint)
e9968fc555
Merge pull request #20210 from ChayimFriedman2/naked-asm-safe
...
fix: Inline asm fixes
2025-07-10 06:28:49 +00:00
Chayim Refael Friedman
ad708fdbd1
Put the expression stuff in the expression store behind an Option<Box>
...
And leave only the type stuff without it.
This is because most expression stores don't have anything but types (e.g. generics, fields, signatures) so this saves a lot of memory.
This saves 58mb on `analysis-stats .`.
2025-07-10 05:18:43 +03:00
Chayim Refael Friedman
95c04c4503
Make global_asm!() work
...
Because apparently, we were not accepting inline asm in item position, completely breaking it.
2025-07-09 18:55:27 +03:00
Lukas Wirth
c86d83219b
chore: Remove dead field from InferenceContext
2025-07-06 10:57:06 +02:00
Hayashi Mikihiro
07a1b4e69f
fix: resolve item in match bind
...
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-07-03 23:57:18 +09:00
Lukas Wirth
889d84a1be
Salsa idiomize VariantFields query
2025-06-26 12:55:55 +02:00
Lukas Wirth
f25912c6f9
De-arc trait items query
2025-06-25 10:09:21 +02:00
Lukas Wirth
03f1003637
chore: Start infesting ide crates with 'db lifetime
2025-06-17 10:42:38 +02:00
Lukas Wirth
aa2d234426
Idiomatic salsa use for enum variants query
2025-06-15 09:03:44 +02:00
Lukas Wirth
133418e3cc
Remove InternedCallableDefId
...
It's unnecessary
2025-06-13 17:30:50 +02:00
Lukas Wirth
38bf4b1fe1
internal: Restructure some semantics APIs for virtual macro files
2025-05-30 22:03:04 +02:00
Lukas Wirth
5b28e9022e
Drop unnecessay code
2025-05-28 07:05:55 +02:00
Chayim Refael Friedman
3e0ab7219a
Fix IDE resolution of item macros
...
It wasn't inside the source, because there was no source map.
2025-05-25 17:20:20 +03:00
Hayashi Mikihiro
bf13549ab6
rename fn name take_path to any
...
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-05-15 13:18:30 +09:00
Hayashi Mikihiro
30fe761685
fix: Removing all unused imports removes used imports for imports used for Derive macros
...
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-05-14 23:51:23 +09:00
Lukas Wirth
581646236e
refactor: De-arc defmap queries
2025-05-05 09:04:52 +02:00
Matthias Krüger
573c47c9ba
remove a couple of clones
2025-05-01 11:41:42 +02:00
Lukas Wirth
6355df9c57
refactor: De-arc lang item queries
2025-04-28 17:17:39 +02:00
Lukas Wirth
4a2eaddc77
refactor: Remove WherePredicateTypeTarget
2025-04-24 09:13:56 +02:00
Chayim Refael Friedman
adcf699ea3
Properly handle lifetimes when checking generic arguments len
...
And also, prepare for correct lowering of lifetime. We still don't handle most lifetimes correctly, but a bit more of the foundation to lifetime elision is now implemented.
2025-04-24 08:35:20 +03:00
Lukas Wirth
1c68d83569
Merge pull request #19657 from ChayimFriedman2/better-offset-of
...
feat: Better support `offset_of!()`
2025-04-22 13:28:34 +00:00
Chayim Refael Friedman
8d824c7828
Resolve offset_of!() in IDE
2025-04-22 00:33:06 +03:00
Chayim Refael Friedman
0f325c7ff8
Remove unnecessary predefined symbol clones
...
Now that they're const it's no longer needed.
Nothing manual was performed: only a regexp search of `sym::([\w][\w\d]*)\.clone\(\)` and replace by `sym::$1`.
2025-04-21 03:10:13 +03:00
Chayim Refael Friedman
c58ddafe90
Make HirFileId, EditionedFileId and macro files Salsa struct
...
And make more queries non-interned.
Also flip the default for queries, now the default is to not intern and to intern a query you need to say `invoke_interned`.
2025-04-19 22:10:52 +03:00
Lukas Wirth
40076b577f
internal: Render sigantures with view hir command
2025-04-13 12:13:28 +02:00
Lukas Wirth
f880acd18c
Merge pull request #19461 from Hmikihiro/shadow_by_module
...
fix: shadow type by module
2025-04-10 12:20:14 +00:00
Chayim Refael Friedman
8a9a1e3345
Remove all upcasts!
...
It turns out there were a lot redundant too.
2025-04-10 11:08:38 +03:00
Hayashi Mikihiro
1b471ebfd5
TypeNs contain module
...
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-04-10 16:29:10 +09:00
Hayashi Mikihiro
a7dc60a2c4
return single option
...
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-04-10 16:29:10 +09:00
Hayashi Mikihiro
2854ad9a41
fix: shadow type by module
...
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-04-10 16:29:10 +09:00
Lukas Wirth
1fd9520c92
refactor: Lower type-refs before type inference
...
This refactors how we deal with items in hir-def lowering.
- It now lowers all of them through an "ExpressionStore" (kind of a misnomer as this point) as their so called *Signatures.
- We now uniformly lower type AST into TypeRefs before type inference.
- Likewise, this moves macro expansion out of type inference, resulting in a single place where we do non-defmap macro expansion.
- Finally, this PR removes a lot of information from ItemTree, making the DefMap a lot less likely to be recomputed and have it only depend on actual early name resolution related information (not 100% true, we still have ADT fields in there but thats a follow up removal).
2025-04-09 10:43:23 +02:00
Lukas Wirth
500ea05aef
chore: Bump dependencies
2025-03-23 08:46:10 +01:00
Chayim Refael Friedman
ced6ea5cd0
Remove unnecessary expansions
...
In the body source map, we record each macro call with the `ExprOrPatId` it resolved to, so to lookup the `ExprId` of some node, we don't need to expand it!
2025-03-20 21:49:18 +02:00
BenjaminBrienen
7535bb4661
cargo fmt
2025-03-15 21:32:01 +01:00
Lukas Wirth
12f54eec27
Split assoc items out of trait_data/impl_data queries
2025-03-14 13:31:41 +01:00
David Barsky
74620e64ec
internal: port rust-analyzer to new Salsa
2025-03-10 13:30:51 -04:00
Lukas Wirth
9fc0ffe008
Use HIR unsafety information for unsafe syntax highlightng
2025-03-05 13:18:46 +01:00
Lukas Wirth
622ef64f93
Merge pull request #18995 from alibektas/12210
...
fix: Lower range pattern bounds to expressions
2025-02-12 11:58:33 +00:00
Hayashi Mikihiro
c84cec1547
Shadowing BuiltinType by Module
...
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-02-10 17:46:43 +09:00