nongoose-derive 0.1.0-beta.1

Macros implementation of #[derive(Schema)]
Documentation
1
2
3
4
5
6
7
8
9
10
11
use proc_macro2::{Ident, Span, TokenStream, TokenTree};
use proc_macro_crate::{crate_name, FoundCrate};

pub(crate) fn get_nongoose_crate_name() -> TokenStream {
  let name = match crate_name("nongoose") {
    Ok(FoundCrate::Name(name)) => name,
    Ok(FoundCrate::Itself) | Err(_) => "nongoose".to_string(),
  };

  TokenTree::from(Ident::new(&name, Span::call_site())).into()
}