rust-analyzer/crates
Chayim Refael Friedman 21ad3b5b87 Complete diagnostics in ty lowering groundwork
Implement diagnostics in all places left: generics (predicates, defaults, const params' types), fields, and type aliases.

Unfortunately this results in a 20mb addition in `analysis-stats .` due to many type methods returning an addition diagnostics result now (even if it's `None` in most cases). I'm not sure if this can be improved.

An alternative strategy that can prevent the memory usage growth is to never produce diagnostics in hir-ty methods. Instead, lower all types in the hir crate when computing diagnostics from scratch (with diagnostics this time). But this has two serious disadvantages:
 1. This can cause code duplication (although it can probably be not that bad, it will still mean a lot more code).
 2. I believe we eventually want to compute diagnostics for the *entire* workspace (either on-type or on-save or something alike), so users can know when they have diagnostics even in inactive files. Choosing this approach will mean we lose all precomputed salsa queries. For one file this is fine, for the whole workspace this will be very slow.
2024-12-04 14:22:56 +02:00
..
base-db chore: rename salsa to ra_salsa 2024-10-14 10:09:22 -04:00
cfg Support cfg(true) and cfg(false) 2024-10-27 10:46:49 +02:00
hir Complete diagnostics in ty lowering groundwork 2024-12-04 14:22:56 +02:00
hir-def Complete diagnostics in ty lowering groundwork 2024-12-04 14:22:56 +02:00
hir-expand Lay the foundation for diagnostics in ty lowering, and implement a first diagnostic 2024-12-04 14:22:56 +02:00
hir-ty Complete diagnostics in ty lowering groundwork 2024-12-04 14:22:56 +02:00
ide Fix parsing of parenthesized type args and RTN 2024-12-04 11:48:47 +01:00
ide-assists Merge pull request #18555 from ChayimFriedman2/issue-17321 2024-12-03 15:39:52 +00:00
ide-completion Merge pull request #18604 from ChayimFriedman2/complete-helpers 2024-12-04 06:33:29 +00:00
ide-db Fix parsing of parenthesized type args and RTN 2024-12-04 11:48:47 +01:00
ide-diagnostics Complete diagnostics in ty lowering groundwork 2024-12-04 14:22:56 +02:00
ide-ssr Fix parsing of parenthesized type args and RTN 2024-12-04 11:48:47 +01:00
intern Merge pull request #18595 from markmurphydev/remove_platform_intrinsic 2024-12-04 04:07:25 +00:00
limit Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
load-cargo Gate #[test] expansion under cfg(test). 2024-09-30 00:12:45 +03:00
mbe fix: FIx mbe bench tests being iteration order dependent 2024-10-21 11:54:49 +02:00
parser Fix parsing of parenthesized type args and RTN 2024-12-04 11:48:47 +01:00
paths Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
proc-macro-api Improve error message for too new proc-macro server 2024-11-02 21:46:05 +08:00
proc-macro-srv Remove support for compressed dylib metadata from rust-analyzer 2024-10-31 12:48:09 +00:00
proc-macro-srv-cli Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
profile Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
project-model Merge pull request #18511 from darichey/sysroot-query-metadata 2024-11-26 15:11:44 +00:00
ra-salsa Fix new nightly lints 2024-10-22 11:48:41 +02:00
rust-analyzer Store some hir_def Paths in the type ref source maps 2024-12-04 14:09:50 +02:00
span internal: log original syntax on panic 2024-10-23 12:56:00 -07:00
stdx Merge pull request #18074 from ChayimFriedman2/typeref-source-map 2024-10-28 11:01:12 +00:00
syntax Lay the foundation for diagnostics in ty lowering, and implement a first diagnostic 2024-12-04 14:22:56 +02:00
syntax-bridge When glueing together tokens from macros, merge their spans 2024-09-29 22:58:15 +03:00
test-fixture Publish test-fixture => ra_ap_test_fixture 2024-10-29 16:26:18 +01:00
test-utils Support new #[rustc_intrinsic] attribute and fallback bodies 2024-11-04 13:33:55 +01:00
toolchain Replace [package.repository] = "…" of published crates with [package.repository.workspace] = true 2024-08-06 00:26:42 +02:00
tt Fix new nightly lints 2024-10-22 11:48:41 +02:00
vfs Rename object_safety to dyn_compatibility 2024-09-29 07:26:45 -04:00
vfs-notify Auto merge of #17843 - mo8it:flycheck, r=Veykril 2024-08-12 09:27:47 +00:00