pub struct AsyncTask<Frntend, Bkend, Md> { /* private fields */ }Expand description
An asynchrnonous task that can generate state mutations and/or more tasks to be spawned by an AsyncCallbackManager.
Implementations§
Source§impl<Frntend, Bkend, Md> AsyncTask<Frntend, Bkend, Md>
impl<Frntend, Bkend, Md> AsyncTask<Frntend, Bkend, Md>
pub fn push( self, next: AsyncTask<Frntend, Bkend, Md>, ) -> AsyncTask<Frntend, Bkend, Md>
pub fn is_no_op(&self) -> bool
pub fn new_no_op() -> AsyncTask<Frntend, Bkend, Md>
pub fn new_future<R>(
request: R,
handler: impl FnOnce(&mut Frntend, R::Output) + Send + 'static,
constraint: Option<Constraint<Md>>,
) -> AsyncTask<Frntend, Bkend, Md>where
R: BackendTask<Bkend, MetadataType = Md> + Debug + 'static,
Bkend: 'static,
Frntend: 'static,
pub fn new_future_chained<R>(
request: R,
handler: impl FnOnce(&mut Frntend, R::Output) -> AsyncTask<Frntend, Bkend, Md> + Send + 'static,
constraint: Option<Constraint<Md>>,
) -> AsyncTask<Frntend, Bkend, Md>where
R: BackendTask<Bkend, MetadataType = Md> + Debug + 'static,
Bkend: 'static,
Frntend: 'static,
pub fn new_stream<R>(
request: R,
handler: impl FnOnce(&mut Frntend, R::Output) + Send + Clone + 'static,
constraint: Option<Constraint<Md>>,
) -> AsyncTask<Frntend, Bkend, Md>where
R: BackendStreamingTask<Bkend, MetadataType = Md> + Debug + 'static,
Bkend: 'static,
Frntend: 'static,
pub fn new_stream_chained<R>(
request: R,
handler: impl FnOnce(&mut Frntend, R::Output) -> AsyncTask<Frntend, Bkend, Md> + Send + Clone + 'static,
constraint: Option<Constraint<Md>>,
) -> AsyncTask<Frntend, Bkend, Md>where
R: BackendStreamingTask<Bkend, MetadataType = Md> + Debug + 'static,
Bkend: 'static,
Frntend: 'static,
Sourcepub fn map<NewFrntend>(
self,
f: impl Fn(&mut NewFrntend) -> &mut Frntend + Clone + Send + 'static,
) -> AsyncTask<NewFrntend, Bkend, Md>where
Bkend: 'static,
Frntend: 'static,
Md: 'static,
pub fn map<NewFrntend>(
self,
f: impl Fn(&mut NewFrntend) -> &mut Frntend + Clone + Send + 'static,
) -> AsyncTask<NewFrntend, Bkend, Md>where
Bkend: 'static,
Frntend: 'static,
Md: 'static,
§Warning
This is recursive, if you have set up a cycle of AsyncTasks, map may overflow.
Trait Implementations§
Auto Trait Implementations§
impl<Frntend, Bkend, Md> Freeze for AsyncTask<Frntend, Bkend, Md>where
Md: Freeze,
impl<Frntend, Bkend, Md> !RefUnwindSafe for AsyncTask<Frntend, Bkend, Md>
impl<Frntend, Bkend, Md> !Send for AsyncTask<Frntend, Bkend, Md>
impl<Frntend, Bkend, Md> !Sync for AsyncTask<Frntend, Bkend, Md>
impl<Frntend, Bkend, Md> Unpin for AsyncTask<Frntend, Bkend, Md>where
Md: Unpin,
impl<Frntend, Bkend, Md> !UnwindSafe for AsyncTask<Frntend, Bkend, Md>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more