Trait xilem::AnyMasonryView

source ·
pub trait AnyMasonryView<T, A = ()>: Send {
    // Required methods
    fn as_any(&self) -> &dyn Any;
    fn dyn_build(&self, cx: &mut ViewCx) -> (WidgetPod<DynWidget>, AnyViewState);
    fn dyn_rebuild(
        &self,
        dyn_state: &mut AnyViewState,
        cx: &mut ViewCx,
        prev: &dyn AnyMasonryView<T, A>,
        element: WidgetMut<'_, DynWidget>
    );
    fn dyn_message(
        &self,
        dyn_state: &mut AnyViewState,
        id_path: &[ViewId],
        message: Box<dyn Any>,
        app_state: &mut T
    ) -> MessageResult<A>;
}
Expand description

A trait enabling type erasure of views.

Required Methods§

source

fn as_any(&self) -> &dyn Any

source

fn dyn_build(&self, cx: &mut ViewCx) -> (WidgetPod<DynWidget>, AnyViewState)

source

fn dyn_rebuild( &self, dyn_state: &mut AnyViewState, cx: &mut ViewCx, prev: &dyn AnyMasonryView<T, A>, element: WidgetMut<'_, DynWidget> )

source

fn dyn_message( &self, dyn_state: &mut AnyViewState, id_path: &[ViewId], message: Box<dyn Any>, app_state: &mut T ) -> MessageResult<A>

Implementors§

source§

impl<T, A, V: MasonryView<T, A> + 'static> AnyMasonryView<T, A> for V
where V::ViewState: Any,