use proc_macro2::TokenStream;
use crate::{schema, Ident};
#[derive(Debug)]
pub struct InputObjectMarker {
pub name: Ident,
}
impl InputObjectMarker {
pub fn from_input_object(en: &schema::InputObjectType) -> Self {
InputObjectMarker {
name: Ident::for_type(&en.name),
}
}
}
impl quote::ToTokens for InputObjectMarker {
fn to_tokens(&self, tokens: &mut TokenStream) {
use quote::{quote, TokenStreamExt};
let name = &self.name;
tokens.append_all(quote! {
#[allow(dead_code)]
pub struct #name {}
});
}
}