Trait panoramix::Element [−][src]
The trait implemented by all GUI elements.
Every type you use to explicitly create a GUI in Panoramix (Button
, TextBox
, any user-made component) implements Element. You usually don’t need to worry about this trait unless you want to implement your own custom element.
For helper methods that can be called on all elements, see ElementExt
.
Note about template resolution
This trait is parameterized on two template types: CpEvent
and CpState
, which represent the event and local-state type of the parent component an element is built in. They are supposed to flow “inwards” with type inference, starting from the -> impl Element<MyEvent, MyState>
return type of your function.
To give a concrete example:
#[component] fn StoreItem(ctx: &CompCtx, item_name: String) -> impl Element<BuyItem, u32> { let item_count = ctx.use_local_state::<u32>(); Column!( Label::new(format!("Item: {} x{}", item_name, item_count)), Button::new("+") .on_click(|item_count, _| { *item_count += 1; }), Button::new("Buy") .bubble_up::<BuyItem>() ) }
In this example, because the return type is declared to be -> impl Element<BuyItem, u32>
, all elements that are returned (Label, Button, Column) will be transitively inferred to implement Element<BuyItem, u32>
.
The flip side of this is that constructing an element and not returning it (eg doing let x = Button::new("...");
and then not using x
) will lead to a compile error, because the compiler can’t infer what CpEvent
and CpState
should be.
Associated Types
type Event
[src]
The type of events this element can raise.
This is the type that ElementExt::on
, ElementExt::map_event
and ElementExt::bubble_up
can take. It’s different from the CpEvent
generic parameter, which is the event the parent component emits.
In the StoreItem
example, the Event
type of buttons is ButtonClick
, and their CpEvent
parameter is BuyItem
.
type AggregateChildrenState: Clone + Default + Debug + PartialEq
[src]
type BuildOutput: VirtualDom<CpEvent, CpState, Event = Self::Event, AggregateChildrenState = Self::AggregateChildrenState>
[src]
Required methods
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
Implementations on Foreign Types
impl<CpEvent, CpState, Child: Element<CpEvent, CpState>> Element<CpEvent, CpState> for Option<Child>
[src]
type Event = NoEvent
type AggregateChildrenState = Option<Child::AggregateChildrenState>
type BuildOutput = Option<Child::BuildOutput>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpState, CpEvent, ChildLeft: Element<CpEvent, CpState>, ChildRight: Element<CpEvent, CpState>> Element<CpEvent, CpState> for Either<ChildLeft, ChildRight>
[src]
type Event = NoEvent
type AggregateChildrenState = Option<Either<ChildLeft::AggregateChildrenState, ChildRight::AggregateChildrenState>>
type BuildOutput = Either<ChildLeft::BuildOutput, ChildRight::BuildOutput>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
Implementors
impl<Comp: Component, ParentCpEvent, ParentCpState> Element<ParentCpEvent, ParentCpState> for ComponentHolder<Comp, ParentCpEvent, ParentCpState>
[src]
type Event = Comp::LocalEvent
type AggregateChildrenState = (Comp::LocalState, Option<AnyStateBox>)
type BuildOutput = ComponentOutput<Comp::LocalEvent, Comp::LocalState, VirtualDomBox<Comp::LocalEvent, Comp::LocalState>, ParentCpEvent, ParentCpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState> Element<CpEvent, CpState> for ElementBox<CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = Option<AnyStateBox>
type BuildOutput = VirtualDomBox<CpEvent, CpState>
fn build(
self,
prev_state: Option<AnyStateBox>
) -> (VirtualDomBox<CpEvent, CpState>, Option<AnyStateBox>)
[src]
self,
prev_state: Option<AnyStateBox>
) -> (VirtualDomBox<CpEvent, CpState>, Option<AnyStateBox>)
impl<CpEvent, CpState> Element<CpEvent, CpState> for Button<CpEvent, CpState>
[src]
type Event = ButtonClick
type AggregateChildrenState = ()
type BuildOutput = ButtonData<CpEvent, CpState>
fn build(self, _prev_state: ()) -> (ButtonData<CpEvent, CpState>, ())
[src]
impl<CpEvent, CpState> Element<CpEvent, CpState> for Checkbox<CpEvent, CpState>
[src]
type Event = Toggled
type AggregateChildrenState = ()
type BuildOutput = CheckboxData<CpEvent, CpState>
fn build(self, _prev_state: ()) -> (CheckboxData<CpEvent, CpState>, ())
[src]
impl<CpEvent, CpState> Element<CpEvent, CpState> for EmptyElement<CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = ()
type BuildOutput = EmptyElementData<CpEvent, CpState>
fn build(self, _prev_state: ()) -> (EmptyElementData<CpEvent, CpState>, ())
[src]
impl<CpEvent, CpState> Element<CpEvent, CpState> for Label<CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = ()
type BuildOutput = LabelData<CpEvent, CpState>
fn build(self, _prev_state: ()) -> (LabelData<CpEvent, CpState>, ())
[src]
impl<CpEvent, CpState> Element<CpEvent, CpState> for TextBox<CpEvent, CpState>
[src]
type Event = TextChanged
type AggregateChildrenState = ()
type BuildOutput = TextBoxData<CpEvent, CpState>
fn build(self, _prev_state: ()) -> (TextBoxData<CpEvent, CpState>, ())
[src]
impl<CpEvent, CpState, Child: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementList<Child, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = Vec<(String, Child::AggregateChildrenState)>
type BuildOutput = ElementListData<Child::BuildOutput, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, Child: Element<CpEvent, CpState>> Element<CpEvent, CpState> for Flex<Child, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = Child::AggregateChildrenState
type BuildOutput = FlexData<Child::BuildOutput, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_1<T0, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, (), (), (), (), (), (), (), (), (), (), ())
type BuildOutput = ElementTupleData<T0::BuildOutput, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_2<T0, T1, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, (), (), (), (), (), (), (), (), (), ())
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>, T2: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_3<T0, T1, T2, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, T2::AggregateChildrenState, (), (), (), (), (), (), (), (), ())
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, T2::BuildOutput, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>, T2: Element<CpEvent, CpState>, T3: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_4<T0, T1, T2, T3, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, T2::AggregateChildrenState, T3::AggregateChildrenState, (), (), (), (), (), (), (), ())
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, T2::BuildOutput, T3::BuildOutput, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>, T2: Element<CpEvent, CpState>, T3: Element<CpEvent, CpState>, T4: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_5<T0, T1, T2, T3, T4, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, T2::AggregateChildrenState, T3::AggregateChildrenState, T4::AggregateChildrenState, (), (), (), (), (), (), ())
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, T2::BuildOutput, T3::BuildOutput, T4::BuildOutput, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>, T2: Element<CpEvent, CpState>, T3: Element<CpEvent, CpState>, T4: Element<CpEvent, CpState>, T5: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_6<T0, T1, T2, T3, T4, T5, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, T2::AggregateChildrenState, T3::AggregateChildrenState, T4::AggregateChildrenState, T5::AggregateChildrenState, (), (), (), (), (), ())
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, T2::BuildOutput, T3::BuildOutput, T4::BuildOutput, T5::BuildOutput, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>, T2: Element<CpEvent, CpState>, T3: Element<CpEvent, CpState>, T4: Element<CpEvent, CpState>, T5: Element<CpEvent, CpState>, T6: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_7<T0, T1, T2, T3, T4, T5, T6, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, T2::AggregateChildrenState, T3::AggregateChildrenState, T4::AggregateChildrenState, T5::AggregateChildrenState, T6::AggregateChildrenState, (), (), (), (), ())
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, T2::BuildOutput, T3::BuildOutput, T4::BuildOutput, T5::BuildOutput, T6::BuildOutput, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>, T2: Element<CpEvent, CpState>, T3: Element<CpEvent, CpState>, T4: Element<CpEvent, CpState>, T5: Element<CpEvent, CpState>, T6: Element<CpEvent, CpState>, T7: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_8<T0, T1, T2, T3, T4, T5, T6, T7, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, T2::AggregateChildrenState, T3::AggregateChildrenState, T4::AggregateChildrenState, T5::AggregateChildrenState, T6::AggregateChildrenState, T7::AggregateChildrenState, (), (), (), ())
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, T2::BuildOutput, T3::BuildOutput, T4::BuildOutput, T5::BuildOutput, T6::BuildOutput, T7::BuildOutput, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>, T2: Element<CpEvent, CpState>, T3: Element<CpEvent, CpState>, T4: Element<CpEvent, CpState>, T5: Element<CpEvent, CpState>, T6: Element<CpEvent, CpState>, T7: Element<CpEvent, CpState>, T8: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_9<T0, T1, T2, T3, T4, T5, T6, T7, T8, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, T2::AggregateChildrenState, T3::AggregateChildrenState, T4::AggregateChildrenState, T5::AggregateChildrenState, T6::AggregateChildrenState, T7::AggregateChildrenState, T8::AggregateChildrenState, (), (), ())
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, T2::BuildOutput, T3::BuildOutput, T4::BuildOutput, T5::BuildOutput, T6::BuildOutput, T7::BuildOutput, T8::BuildOutput, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>, T2: Element<CpEvent, CpState>, T3: Element<CpEvent, CpState>, T4: Element<CpEvent, CpState>, T5: Element<CpEvent, CpState>, T6: Element<CpEvent, CpState>, T7: Element<CpEvent, CpState>, T8: Element<CpEvent, CpState>, T9: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_10<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, T2::AggregateChildrenState, T3::AggregateChildrenState, T4::AggregateChildrenState, T5::AggregateChildrenState, T6::AggregateChildrenState, T7::AggregateChildrenState, T8::AggregateChildrenState, T9::AggregateChildrenState, (), ())
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, T2::BuildOutput, T3::BuildOutput, T4::BuildOutput, T5::BuildOutput, T6::BuildOutput, T7::BuildOutput, T8::BuildOutput, T9::BuildOutput, EmptyElementData<CpEvent, CpState>, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>, T2: Element<CpEvent, CpState>, T3: Element<CpEvent, CpState>, T4: Element<CpEvent, CpState>, T5: Element<CpEvent, CpState>, T6: Element<CpEvent, CpState>, T7: Element<CpEvent, CpState>, T8: Element<CpEvent, CpState>, T9: Element<CpEvent, CpState>, T10: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_11<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, T2::AggregateChildrenState, T3::AggregateChildrenState, T4::AggregateChildrenState, T5::AggregateChildrenState, T6::AggregateChildrenState, T7::AggregateChildrenState, T8::AggregateChildrenState, T9::AggregateChildrenState, T10::AggregateChildrenState, ())
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, T2::BuildOutput, T3::BuildOutput, T4::BuildOutput, T5::BuildOutput, T6::BuildOutput, T7::BuildOutput, T8::BuildOutput, T9::BuildOutput, T10::BuildOutput, EmptyElementData<CpEvent, CpState>, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
impl<CpEvent, CpState, T0: Element<CpEvent, CpState>, T1: Element<CpEvent, CpState>, T2: Element<CpEvent, CpState>, T3: Element<CpEvent, CpState>, T4: Element<CpEvent, CpState>, T5: Element<CpEvent, CpState>, T6: Element<CpEvent, CpState>, T7: Element<CpEvent, CpState>, T8: Element<CpEvent, CpState>, T9: Element<CpEvent, CpState>, T10: Element<CpEvent, CpState>, T11: Element<CpEvent, CpState>> Element<CpEvent, CpState> for ElementTuple_12<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, CpEvent, CpState>
[src]
type Event = NoEvent
type AggregateChildrenState = (T0::AggregateChildrenState, T1::AggregateChildrenState, T2::AggregateChildrenState, T3::AggregateChildrenState, T4::AggregateChildrenState, T5::AggregateChildrenState, T6::AggregateChildrenState, T7::AggregateChildrenState, T8::AggregateChildrenState, T9::AggregateChildrenState, T10::AggregateChildrenState, T11::AggregateChildrenState)
type BuildOutput = ElementTupleData<T0::BuildOutput, T1::BuildOutput, T2::BuildOutput, T3::BuildOutput, T4::BuildOutput, T5::BuildOutput, T6::BuildOutput, T7::BuildOutput, T8::BuildOutput, T9::BuildOutput, T10::BuildOutput, T11::BuildOutput, CpEvent, CpState>
fn build(
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)
[src]
self,
prev_state: Self::AggregateChildrenState
) -> (Self::BuildOutput, Self::AggregateChildrenState)