Struct relm4::factory::AsyncFactoryVecDeque
source · pub struct AsyncFactoryVecDeque<C: AsyncFactoryComponent>where
<C::ParentWidget as FactoryView>::ReturnedWidget: Clone,{ /* private fields */ }
Expand description
A container similar to VecDeque
that can be used to store
data associated with components that implement AsyncFactoryComponent
.
To access mutable methods of the factory, create a guard using Self::guard
.
Implementations§
source§impl<C: AsyncFactoryComponent> AsyncFactoryVecDeque<C>where
<C::ParentWidget as FactoryView>::ReturnedWidget: Clone,
impl<C: AsyncFactoryComponent> AsyncFactoryVecDeque<C>where
<C::ParentWidget as FactoryView>::ReturnedWidget: Clone,
sourcepub fn new(
widget: C::ParentWidget,
parent_sender: &Sender<C::ParentInput>
) -> Self
pub fn new(
widget: C::ParentWidget,
parent_sender: &Sender<C::ParentInput>
) -> Self
Creates a new AsyncFactoryVecDeque
.
sourcepub fn guard(&mut self) -> AsyncFactoryVecDequeGuard<'_, C>
pub fn guard(&mut self) -> AsyncFactoryVecDequeGuard<'_, C>
Provides a AsyncFactoryVecDequeGuard
that can be used to edit the factory.
The changes will be rendered on the widgets after the guard goes out of scope.
sourcepub fn len(&self) -> usize
pub fn len(&self) -> usize
Returns the number of elements in the AsyncFactoryVecDeque
.
sourcepub fn is_empty(&self) -> bool
pub fn is_empty(&self) -> bool
Returns true if the AsyncFactoryVecDeque
is empty.
sourcepub fn broadcast(&self, msg: C::Input)where
C::Input: Clone,
pub fn broadcast(&self, msg: C::Input)where
C::Input: Clone,
Send clone of a message to all of the elements.
sourcepub fn get(&self, index: usize) -> Option<&C>
pub fn get(&self, index: usize) -> Option<&C>
Tries to get an immutable reference to the model of one element.
Returns None
if index
is invalid or the async init_model()
method
hasn’t returned yet.
sourcepub fn back(&self) -> Option<&C>
pub fn back(&self) -> Option<&C>
Provides a reference to the model of the back element.
Returns None
if index
is invalid or the async init_model()
method
of the last element hasn’t returned yet.
sourcepub fn front(&self) -> Option<&C>
pub fn front(&self) -> Option<&C>
Provides a reference to the model of the front element.
Returns None
if index
is invalid or the async init_model()
method
of the first element hasn’t returned yet.
sourcepub const fn widget(&self) -> &C::ParentWidget
pub const fn widget(&self) -> &C::ParentWidget
Returns the widget all components are attached to.
sourcepub fn iter(
&self
) -> impl Iterator<Item = Option<&C>> + DoubleEndedIterator + ExactSizeIterator + FusedIterator
pub fn iter(
&self
) -> impl Iterator<Item = Option<&C>> + DoubleEndedIterator + ExactSizeIterator + FusedIterator
Returns an iterator over the components.
Each item will be Some
if the async init_model()
method
of the item returned and otherwise None
.