use quote::Tokens;
pub(crate) trait ToRustType {
fn type_doc(&self) -> Tokens {
quote!()
}
fn type_name(&self) -> Tokens;
}
pub(crate) trait ToRustParser: ToRustType {
fn to_inline_parser(&self) -> Tokens {
quote! {#(self.parser_name())}
}
}
pub(crate) trait ToNamedRustParser: ToRustParser {
fn parser_name(&self) -> Tokens;
fn to_named_parser(&self) -> Tokens;
}
pub(crate) trait ToRustStruct: ToRustType {
fn to_struct(&self) -> Tokens;
}