Trait relm_state::Update
[−]
[src]
pub trait Update where
Self: Sized,
Self::Msg: DisplayVariant, { type Model; type ModelParam: Sized; type Msg; fn model(relm: &Relm<Self>, param: Self::ModelParam) -> Self::Model; fn update(&mut self, event: Self::Msg); fn subscriptions(&mut self, _relm: &Relm<Self>) { ... } }
Trait for a basic (non-widget) component.
A component has a model (data) associated with it and can mutate it when it receives a message
(in the update()
method).
Associated Types
type Model
The type of the model.
type ModelParam: Sized
The type of the parameter of the model() function used to initialize the model.
type Msg
The type of the messages sent to the update()
method.
Required Methods
fn model(relm: &Relm<Self>, param: Self::ModelParam) -> Self::Model
Create the initial model.
fn update(&mut self, event: Self::Msg)
Method called when a message is received from an event.
Provided Methods
fn subscriptions(&mut self, _relm: &Relm<Self>)
Connect the subscriptions.
Subscriptions are Future
/Stream
that are spawn when the object is created.