pub struct DelegatingModeCombiner<'m, T> { /* private fields */ }
Expand description
Default implementation for the ModeWrapper
trait that combines ModeCombiners
by
setting the current ModeCombiner
as the outer ModeCombiner
of the newly added ModeCombiner
so that the iterator walks the ModeCombiners
in the reverse order of which they were added, meaning
the ModeCombiner
that was added first ends up wrapping the task last, meaning its task will be the
outermost task.
Trait Implementations§
Source§impl<T> Clone for DelegatingModeCombiner<'_, T>
impl<T> Clone for DelegatingModeCombiner<'_, T>
Source§impl<'m, T> ModeCombiner<'m, T> for DelegatingModeCombiner<'m, T>
impl<'m, T> ModeCombiner<'m, T> for DelegatingModeCombiner<'m, T>
Source§fn combine(
&self,
other: Box<dyn ModeCombiner<'m, T> + Send + Sync + 'm>,
) -> Box<dyn ModeCombiner<'m, T> + Send + Sync + 'm>
fn combine( &self, other: Box<dyn ModeCombiner<'m, T> + Send + Sync + 'm>, ) -> Box<dyn ModeCombiner<'m, T> + Send + Sync + 'm>
Combine this ModeCombiner with the supplied boxed ModeCombiner. Read more
Source§fn get_outer(&self) -> Option<&(dyn ModeCombiner<'m, T> + Send + Sync)>
fn get_outer(&self) -> Option<&(dyn ModeCombiner<'m, T> + Send + Sync)>
Return the outer ModeCombiner this ModeCombiner delegates to, this is the next ModeCombiner
the iterator returned by
ModeCombiner::iter
steps to.Source§fn set_outer(&mut self, outer: Arc<dyn ModeCombiner<'m, T> + Send + Sync + 'm>)
fn set_outer(&mut self, outer: Arc<dyn ModeCombiner<'m, T> + Send + Sync + 'm>)
Set the outer ModeCombiner this ModeCombiner delegates to, this is the next ModeCombiner
the iterator returned by
ModeCombiner::iter
steps to.Source§fn iter<'a>(&'a self) -> ModeCombinerIterator<'a, 'm, T> ⓘ
fn iter<'a>(&'a self) -> ModeCombinerIterator<'a, 'm, T> ⓘ
Return an iterator that can unwrap combined ModeCombiners by stepping into the outer
ModeCombiner recursively.
Source§fn wrapper_ref(&self) -> Arc<dyn ModeWrapper<'m, T> + Send + Sync + 'm>
fn wrapper_ref(&self) -> Arc<dyn ModeWrapper<'m, T> + Send + Sync + 'm>
Reference the source
ModeWrapper
. Used to wrap the task when
applying a Mode
.Auto Trait Implementations§
impl<'m, T> Freeze for DelegatingModeCombiner<'m, T>
impl<'m, T> !RefUnwindSafe for DelegatingModeCombiner<'m, T>
impl<'m, T> Send for DelegatingModeCombiner<'m, T>
impl<'m, T> Sync for DelegatingModeCombiner<'m, T>
impl<'m, T> Unpin for DelegatingModeCombiner<'m, T>
impl<'m, T> !UnwindSafe for DelegatingModeCombiner<'m, T>
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