1 2 3 4 5 6 7 8 9 10 11
use proc_macro::TokenStream; use quote::ToTokens; /// `let name = crate_name!();` #[proc_macro] pub fn crate_name(_: TokenStream) -> TokenStream { std::env::var("CARGO_PKG_NAME") .expect("The environment variable `CARGO_PKG_NAME` cannot be found!") .to_token_stream() .into() }