cgp-tests 0.5.0-beta3

Context-generic programming meta crate
Documentation
#[cgp::re_export_imports]
mod preset {
    use cgp::prelude::*;

    use crate::tests::preset::nested_inheritance::preset_b::NestedPresetB;
    use crate::tests::preset::nested_inheritance::preset_c::NestedPresetC;

    cgp_preset! {
        NestedPresetD: NestedPresetB + NestedPresetC {
            override FooGetterComponent:
                UseField<Symbol!("fool")>,
            override BarTypeProviderComponent ->
                NestedPresetC::Provider,
        }
    }

    pub trait CheckDelegatesForNestedPresetD:
        DelegateComponent<FooTypeProviderComponent, Delegate = UseType<()>>
        + DelegateComponent<BarTypeProviderComponent, Delegate = UseType<()>>
        + DelegateComponent<BarGetterComponent, Delegate = UseField<Symbol!("bar")>>
        + DelegateComponent<FooGetterComponent, Delegate = UseField<Symbol!("fool")>>
    {
    }

    impl CheckDelegatesForNestedPresetD for NestedPresetD::Provider {}
}