Macro syn_error_experiment::parse_macro_input [−][src]
macro_rules! parse_macro_input { ($tokenstream:ident as $ty:ty) => { ... }; }
Parse the input TokenStream of a macro, triggering a compile error if the tokens fail to parse.
Intended usage
use proc_macro::TokenStream; use syn_error_experiment::parse_macro_input; use syn_error_experiment::parse::{Parse, ParseStream, Result}; struct MyMacroInput { /* ... */ } impl Parse for MyMacroInput { fn parse(input: ParseStream) -> Result<Self> { /* ... */ } } #[proc_macro] pub fn my_macro(tokens: TokenStream) -> TokenStream { let input = parse_macro_input!(tokens as MyMacroInput); /* ... */ }