about summary refs log tree commit diff
path: root/src/tools/rust-analyzer/crates
AgeCommit message (Collapse)AuthorLines
2025-04-25Preallocate `parser::Input`Chayim Refael Friedman-3/+10
2025-04-25Merge pull request #19688 from ChayimFriedman2/less-unusedLukas Wirth-154/+159
internal: More `shrink_to_fit()` and upgrade dashmap and hashbrown
2025-04-25Switch `AstIdMap` to `hashbrown::HashTable` from the raw APIChayim Refael Friedman-10/+10
It's the intended use.
2025-04-25Upgrade dashmap and hashbrownChayim Refael Friedman-117/+98
And adapt `intern` to the changes in the API.
2025-04-25minor: formatgohome001-6/+4
2025-04-25test: add test case for highlight unsafe operationsgohome001-0/+28
2025-04-25feat: highlight unsafe operationsgohome001-0/+57
2025-04-25`shrink_to_fit()` in more placesChayim Refael Friedman-27/+51
This saves 18mb on `analysis-stats .`, without regressing speed.
2025-04-24Always error when failed to parse DiscoverProjectMessageDavid Richey-13/+13
2025-04-24Merge pull request #19678 from Veykril/push-mkznvpsktnnzLukas Wirth-60/+126
Arena allocate `LifetimeRef`s
2025-04-24Merge pull request #19675 from Veykril/push-uuluymsosttrLukas Wirth-12/+29
fix: Fix type argument mismatch incorrectly triggering on inferred trait args
2025-04-24Arena allocate `LifetimeRef`sLukas Wirth-60/+126
2025-04-24Shrink `WherePredicate` by 8 bytesLukas Wirth-2/+3
2025-04-24Correctly set `infer_args = true` in more placesChayim Refael Friedman-8/+10
Previously this being incorrect wasn't a problem, it just meant we put an error type that then changed to infer type, so exactly what rustc does at the end. But now there is a diagnostic.
2025-04-24fix: Fix type argument mismatch incorrectly triggering on inferred trait argsLukas Wirth-4/+19
2025-04-24refactor: Remove `WherePredicateTypeTarget`Lukas Wirth-311/+302
2025-04-24Properly handle lifetimes when checking generic arguments lenChayim Refael Friedman-226/+858
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-23fix: Fix incorrect diagnostic for lifetime parameter count mismatchLukas Wirth-15/+21
2025-04-23Mark `incorrect_generics_len` diagnostic as experimentalLukas Wirth-0/+1
2025-04-22Merge pull request #19647 from roife/fix-issue-19646Lukas Wirth-41/+31
fix: panics in inlay hints that produce empty text edits for closure return types
2025-04-23fix: panics in inlay hints that produce empty text edits for closure return ↵roifewu-41/+31
types
2025-04-22Merge pull request #19657 from ChayimFriedman2/better-offset-ofLukas Wirth-3/+230
feat: Better support `offset_of!()`
2025-04-22Account for `IngredientCache::get_or_create()` taking `&Zalsa` and not `&dyn ↵Chayim Refael Friedman-1/+1
Database`
2025-04-22Fix varianceChayim Refael Friedman-7/+3
This one does need fixpoint.
2025-04-22Adapt for new cycle handling changing in SalsaChayim Refael Friedman-339/+133
2025-04-22Adjust for `salsa::Id::from_u32()` being unsafeChayim Refael Friedman-183/+80
This impacts our manual `salsa::Id` wrappers. I refactored them a bit to improve safety.
2025-04-22Adjust for new Salsa not implementing `Debug` by defaultChayim Refael Friedman-6/+6
2025-04-22Merge pull request #19479 from ChayimFriedman2/generic-mismatchLukas Wirth-405/+1243
feat: Add two new diagnostics: one for mismatch in generic arguments count, and another for mismatch in their kind
2025-04-22The new diagnostic has found a bug lurking in minicoreChayim Refael Friedman-1/+1
It's cute, isn't it?
2025-04-22Add two new diagnostics: one for mismatch in generic arguments count, and ↵Chayim Refael Friedman-404/+1242
another for mismatch in their kind Also known as E0747 and E0107. And by the way, rewrite how we lower generic arguments and deduplicate it between paths and method calls. The new version is taken almost straight from rustc. This commit also changes the binders of `generic_defaults()`, to only include the binders of the arguments up to (and not including) the current argument. This make it easier to handle it in the rewritten lowering of generic args. It's also how rustc does it.
2025-04-22Merge pull request #19622 from A4-Tacks/raw-string-suffixLukas Wirth-13/+293
Fix ide-assists raw_string suffix fail
2025-04-22Merge pull request #19662 from Veykril/push-lqqvmnonlwrxLukas Wirth-1/+1
minor: Fix outdated comment in hir-ty/generics.rs
2025-04-22minor: Fix outdated comment in hir-ty/generics.rsLukas Wirth-1/+1
2025-04-22Merge pull request #19624 from jackh726/chalk-updateLukas Wirth-161/+154
Update chalk
2025-04-22Resolve `offset_of!()` in IDEChayim Refael Friedman-3/+169
2025-04-21refactor: Fold hygiene map into bindings themselvesLukas Wirth-34/+38
`HygieneId` fits into `Binding`'s padding.
2025-04-21Merge pull request #19644 from ChayimFriedman2/const-symsLukas Wirth-479/+438
internal: Make predefined symbols `const` instead of `static`
2025-04-21Merge pull request #19604 from WtzLAS/fix-issue-19601Lukas Wirth-1/+1
Add semicolon to use
2025-04-21Merge pull request #19629 from jyn514/unset-envLukas Wirth-91/+114
allow using `null` to unset an environment variable
2025-04-21Merge pull request #19643 from ChayimFriedman2/generic-const-itemsLukas Wirth-3/+305
feat: Parse generic consts
2025-04-21Merge pull request #19653 from Veykril/push-lmrprywtztztLukas Wirth-4/+30
feat: parse `super let`
2025-04-21Merge pull request #19651 from roife/enhance-notable-trait-renderLukas Wirth-36/+16
minor: simplify and enhance notable traits rendering
2025-04-21feat: parse `super let`Lukas Wirth-4/+30
2025-04-21minor: simplify and enhance notable traits renderingroifewu-36/+16
2025-04-21fix: Support unstable `UnsafePinned` struct in type layout calcLukas Wirth-14/+16
2025-04-21fix: Fix completion_snippets_custom config always erroringLukas Wirth-10/+12
2025-04-21Back out "When changing the config, do not emit an error if a field is missing"Lukas Wirth-5/+4
This backs out commit 8497fc321cad420b923e15f600106f8e22324930.
2025-04-21Allow wrapping `builtin#offset_of` fields argument in parenthesesChayim Refael Friedman-0/+61
This is necessary to correctly handle nested fields (`foo.bar`), see the comments in the code for explanation.
2025-04-21Remove unnecessary predefined symbol clonesChayim Refael Friedman-367/+318
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-21Get rid of static predefined symbolsChayim Refael Friedman-112/+120
Make them all `const`.