Skip to main content

cgp_macro_lib/entrypoints/
cgp_impl.rs

1use proc_macro2::TokenStream;
2use syn::{ItemImpl, parse2};
3
4use crate::cgp_impl::{ImplProviderSpec, derive_cgp_impl};
5
6pub fn cgp_impl(attr: TokenStream, body: TokenStream) -> syn::Result<TokenStream> {
7    let spec: ImplProviderSpec = parse2(attr)?;
8    let item_impl: ItemImpl = parse2(body)?;
9
10    derive_cgp_impl(spec, item_impl)
11}