mirror of
https://github.com/rust-lang/rust-analyzer
synced 2025-01-12 21:28:51 +00:00
04d2b7b256
5565: SSR: Don't mix non-path-based rules with path-based r=matklad a=davidlattimore If any rules contain paths, then we reject any rules that don't contain paths. Allowing a mix leads to strange semantics, since the path-based rules only match things where the path refers to semantically the same thing, whereas the non-path-based rules could match anything. Specifically, if we have a rule like `foo ==>> bar` we only want to match the `foo` that is in the current scope, not any `foo`. However "foo" can be parsed as a pattern (BIND_PAT -> NAME -> IDENT). Allowing such a rule through would result in renaming everything called `foo` to `bar`. It'd also be slow, since without a path, we'd have to use the slow-scan search mechanism. Co-authored-by: David Lattimore <dml@google.com> |
||
---|---|---|
.. | ||
expect | ||
flycheck | ||
paths | ||
ra_arena | ||
ra_assists | ||
ra_cfg | ||
ra_db | ||
ra_fmt | ||
ra_hir | ||
ra_hir_def | ||
ra_hir_expand | ||
ra_hir_ty | ||
ra_ide | ||
ra_ide_db | ||
ra_mbe | ||
ra_parser | ||
ra_proc_macro | ||
ra_proc_macro_srv | ||
ra_prof | ||
ra_project_model | ||
ra_ssr | ||
ra_syntax | ||
ra_text_edit | ||
ra_toolchain | ||
ra_tt | ||
rust-analyzer | ||
stdx | ||
test_utils | ||
vfs | ||
vfs-notify |