A tokenization Library for Rust.
quote-data provide derive macro quote_data::QuoteIt,
which implements quote::ToTokens for struct or enum.
use quote_data::QuoteIt;use proc_macro2::TokenStream;use quote::quote;#[derive(QuoteIt)]structFoo{a:i32,b:i64}#[derive(QuoteIt)]#[mod_path="path::to::mod"]enumBar{A(u8,String),B}fnsome_fn() -> TokenStream{let foo = Foo{a:1,b:2};let bar = Bar::A(1,"test".to_string);quote!{
|| (#foo, #bar)}}- Any types implemented
quote::ToTokens StringVec,HashMap,HashSetResult,OptionTuplestd::marker::PhantomData