]>
git.proxmox.com Git - rustc.git/blob - src/doc/book/listings/ch19-advanced-features/listing-19-31/hello_macro/hello_macro_derive/src/lib.rs
1 extern crate proc_macro
;
3 use proc_macro
::TokenStream
;
7 #[proc_macro_derive(HelloMacro)]
8 pub fn hello_macro_derive(input
: TokenStream
) -> TokenStream
{
9 // Construct a representation of Rust code as a syntax tree
10 // that we can manipulate
11 let ast
= syn
::parse(input
).unwrap();
13 // Build the trait implementation
14 impl_hello_macro(&ast
)