mirror of
https://github.com/rust-lang/rust.git
synced 2025-06-19 19:17:31 +00:00
38 lines
697 B
Rust
38 lines
697 B
Rust
extern crate proc_macro;
|
|
|
|
use proc_macro::TokenStream;
|
|
|
|
#[proc_macro]
|
|
pub fn make_edition_macro(_input: TokenStream) -> TokenStream {
|
|
"macro_rules! edition {
|
|
($_:expr) => {
|
|
2024
|
|
};
|
|
(const {}) => {
|
|
2021
|
|
};
|
|
}
|
|
"
|
|
.parse()
|
|
.unwrap()
|
|
}
|
|
|
|
#[proc_macro]
|
|
pub fn make_nested_edition_macro(_input: TokenStream) -> TokenStream {
|
|
"macro_rules! make_inner {
|
|
() => {
|
|
macro_rules! edition_inner {
|
|
($_:expr) => {
|
|
2024
|
|
};
|
|
(const {}) => {
|
|
2021
|
|
};
|
|
}
|
|
};
|
|
}
|
|
"
|
|
.parse()
|
|
.unwrap()
|
|
}
|