about summary refs log tree commit diff
path: root/src/tools/rust-analyzer/crates/cfg
AgeCommit message (Collapse)AuthorLines
2025-07-31`cargo clippy --fix`Lukas Wirth-4/+4
2025-07-20Support `cfg_select!`Chayim Refael Friedman-1/+13
2025-06-23Don't run doctestsChayim Refael Friedman-0/+1
2025-04-25`shrink_to_fit()` in more placesChayim Refael Friedman-0/+5
This saves 18mb on `analysis-stats .`, without regressing speed.
2025-04-21Remove unnecessary predefined symbol clonesChayim Refael Friedman-1/+1
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-03-23chore: Bump dependenciesLukas Wirth-4/+4
2025-03-16refactor: Remove `CrateGraphBuilder::iter_mut`Lukas Wirth-1/+1
2025-03-15cargo fmtBenjaminBrienen-5/+6
2025-03-12Salsify the crate graphChayim Refael Friedman-0/+12
I.e. make it not one giant input but multiple, for incrementality and decreased memory usage for Salsa 3 reasons.
2025-03-03Merge pull request #19243 from Veykril/push-qrrqsywkwyzpLukas Wirth-23/+35
Allow unsetting default cfgs
2025-02-27Allow unsetting default cfgsLukas Wirth-23/+35
2025-02-27enable doctestBenjaminBrienen-1/+0
2025-01-02Store token trees in contiguous `Vec` instead of as a treeChayim Refael Friedman-11/+10
I expected this to be faster (due to less allocations and better cache locality), but benchmarked it is not (neither it is slower). Memory usage, however, drops by ~50mb (of `analysis-stats .`). I guess tt construction is just not hot. This also simplifies using even less memory for token trees by compressing equal span, which I plan to do right after. Some workflows are more easily expressed with a flat tt, while some are better expressed with a tree. With the right helpers, though (which was mostly a matter of trial and error), even the worst workflows become very easy indeed.
2024-10-27Support `cfg(true)` and `cfg(false)`Chayim Refael Friedman-6/+27
As per RFC 3695.
2024-09-30Gate `#[test]` expansion under `cfg(test)`.Chayim Refael Friedman-0/+4
This will mean users opting to not activate `cfg(test)` will lose IDE experience on them, which is quite unfortunate, but this is unavoidable if we want to avoid false positives on e.g. diagnostics. The real fix is to provide IDE experience even for cfg'ed out code, but this is out of scope for this PR.
2024-08-07Remove unnecessary CfgFlag definition in project-modelLukas Wirth-0/+8
2024-08-06Replace `[package.repository] = "…"` of published crates with ↵Vincent Esche-1/+1
`[package.repository.workspace] = true`
2024-08-06Unify package descriptions by adding references to "rust-analyzer"Vincent Esche-1/+1
With the lack of a README on the individually published library crates and the somewhat cryptic `ra_ap_` prefix it is hard to figure out where those crates belong to, so mentioning "rust-analyzer" feels like auseful hint there.
2024-08-06Add repository URL for published crates' missing `[package.repository]` fieldsVincent Esche-0/+1
2024-08-06Replace `"TBD"` with more helpful desciptions in published crates' ↵Vincent Esche-1/+1
`[package.description]` fields
2024-08-05Split out syntax-bridge into a separate crateLukas Wirth-2/+5
2024-07-21Make `CfgExpr` slimmerLukas Wirth-59/+72
2024-07-16Use symbol in cfgLukas Wirth-43/+61
2024-07-16Switch token trees to use SymbolsLukas Wirth-8/+8
2024-06-30Remove inline `rust_2018_idioms, unused_lifetimes` lint warn, Cargo.toml ↵Lukas Wirth-2/+0
already enforces this
2024-04-27fix: Fix doc comment desugaring for proc-macrosLukas Wirth-5/+25
2024-04-21Allow rust files to be used linkedProjectsLukas Wirth-0/+944