crud-api-derive 0.1.1

CLI generator for your API. derive Api implementation
Documentation
use crud_api_endpoint::{store_endpoint, table_impl, Api};
use darling::FromDeriveInput;
use proc_macro::TokenStream;
use syn::DeriveInput;

pub fn api(ast: &DeriveInput) -> TokenStream {
  let api = Api::from_derive_input(ast).unwrap();
  for endpoint in api.endpoint {
    let mut endpoint = endpoint;
    if endpoint.result_struct.is_empty() {
      endpoint.result_struct = api.ident.to_string();
    }
    endpoint.result_is_stream = endpoint.result_is_stream || api.result_is_stream;
    store_endpoint(endpoint);
  }

  table_impl(&api.ident, &api.data).into()
}