Commit 3a50257e authored by Jesung Yang's avatar Jesung Yang Committed by Miguel Ojeda
Browse files

scripts: generate_rust_analyzer: quote: treat `core` and `std` as dependencies



Fix the `generate_rust_analyzer.py` script to ensure that the
`rust-project.json` it produces includes `core` and `std` in the `deps`
field for the `quote` crate.

`quote` directly references items from both `core` and `std`, so
rust-analyzer should treat them as dependencies to provide correct IDE
support.

For example, the `::quote::ToTokens` trait is implemented for
`std::ffi::CString`. With `std` listed in the `deps` field,
rust-analyzer can show the expected autocomplete for the
`::quote::ToTokens` methods on `std::ffi::CString`.

Verified the explicit uses of `core` and `std` using:

    grep -rnE 'core::|std::' rust/quote/

Fixes: 88de91cc ("rust: quote: enable support in kbuild")
Signed-off-by: default avatarJesung Yang <y.j3ms.n@gmail.com>
Reviewed-by: default avatarTamir Duberstein <tamird@gmail.com>
Link: https://patch.msgid.link/cef76fc1105481d219953c8552eb5eb07dac707a.1764062688.git.y.j3ms.n@gmail.com


[ Reworded title. - Miguel ]
Signed-off-by: default avatarMiguel Ojeda <ojeda@kernel.org>
parent 87417cc9
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -96,7 +96,7 @@ def generate_crates(srctree, objtree, sysroot_src, external_src, cfgs, core_edit
    append_crate(
        "quote",
        srctree / "rust" / "quote" / "lib.rs",
        ["alloc", "proc_macro", "proc_macro2"],
        ["core", "alloc", "std", "proc_macro", "proc_macro2"],
        cfg=crates_cfgs["quote"],
    )