Rust: add proc-macro capabilities to QL tests

This adds the possibility to add a special `proc_macro.rs` source file
to QL tests, which will be generated into a `proc_macro` crate the
usual `lib` crate depends on.

This allow to define procedural macros in QL tests, and is here used to
move the `macro-expansion` integration test to be a language test
instead.

As the generated manifests involved were starting to get a bit complex,
they are now generated from a `mustache` template.
This commit is contained in:
Paolo Tranquilli
2025-06-17 16:19:50 +02:00
parent 17cd58bd3c
commit 299fe2eb3f
33 changed files with 2428 additions and 380 deletions

1
Cargo.lock generated
View File

@@ -426,6 +426,7 @@ dependencies = [
"figment",
"glob",
"itertools 0.14.0",
"mustache",
"num-traits",
"ra_ap_base_db",
"ra_ap_cfg",