cgp-macro-lib 0.7.0

Context-generic programming core component macros implemented as a library.
Documentation
1
2
3
4
5
6
7
8
9
10
11
use proc_macro2::TokenStream;
use syn::{ItemImpl, parse2};

use crate::cgp_impl::{ImplProviderSpec, derive_cgp_impl};

pub fn cgp_impl(attr: TokenStream, body: TokenStream) -> syn::Result<TokenStream> {
    let spec: ImplProviderSpec = parse2(attr)?;
    let item_impl: ItemImpl = parse2(body)?;

    derive_cgp_impl(spec, item_impl)
}