cgp-macro-lib 0.7.0

Context-generic programming core component macros implemented as a library.
Documentation
/*!
   This is an internal crate used by the `cgp-macro` crate. We implement the
   proc macros for `cgp-component` as a library, so that it can be more easily tested.
   The constructs are then re-exported as proc macros in the `cgp-macro` crate,
   which is defined as a proc macro crate.
*/

extern crate alloc;

pub(crate) mod blanket_trait;
pub(crate) mod cgp_fn;
pub(crate) mod cgp_impl;
pub(crate) mod check_components;
pub(crate) mod delegate_components;
pub(crate) mod derive_builder;
pub(crate) mod derive_component;
pub(crate) mod derive_extractor;
pub(crate) mod derive_getter;
pub(crate) mod derive_has_fields;
pub(crate) mod derive_provider;
pub(crate) mod field;
pub(crate) mod for_each_replace;
pub(crate) mod parse;
pub(crate) mod preset;
pub(crate) mod product;
pub(crate) mod replace_self;
pub(crate) mod symbol;
pub(crate) mod type_component;

mod entrypoints;
pub mod utils;

pub use field::derive_has_field;
pub use product::{make_product_expr, make_product_type, make_sum_type};
pub use symbol::make_symbol;

pub use crate::entrypoints::*;