pub struct KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> { /* private fields */ }Expand description
Keypath that chains a sync keypath (crate::Kp) with an AsyncKeyPathLike. Use crate::Kp::then_async to create; then .get(&root).await.
Implementations§
Source§impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>where
First: SyncKeyPathLike<Root, Value, MutRoot, MutValue>,
Second: AsyncKeyPathLike<Value, MutValue, Value = Value2, MutValue = MutValue2>,
impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>where
First: SyncKeyPathLike<Root, Value, MutRoot, MutValue>,
Second: AsyncKeyPathLike<Value, MutValue, Value = Value2, MutValue = MutValue2>,
Source§impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>where
First: SyncKeyPathLike<Root, Value, MutRoot, MutValue>,
Second: AsyncKeyPathLike<Value, MutValue, Value = Value2, MutValue = MutValue2>,
impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>where
First: SyncKeyPathLike<Root, Value, MutRoot, MutValue>,
Second: AsyncKeyPathLike<Value, MutValue, Value = Value2, MutValue = MutValue2>,
Sourcepub fn then<V3, Value3, MutValue3, G3, S3>(
self,
next_kp: Kp<V2, V3, Value2, Value3, MutValue2, MutValue3, G3, S3>,
) -> AsyncKeyPathThenKp<R, V3, Root, Value3, MutRoot, MutValue3, Self, Kp<V2, V3, Value2, Value3, MutValue2, MutValue3, G3, S3>>
pub fn then<V3, Value3, MutValue3, G3, S3>( self, next_kp: Kp<V2, V3, Value2, Value3, MutValue2, MutValue3, G3, S3>, ) -> AsyncKeyPathThenKp<R, V3, Root, Value3, MutRoot, MutValue3, Self, Kp<V2, V3, Value2, Value3, MutValue2, MutValue3, G3, S3>>
Chain with a crate::Kp. Use .get(&root).await later.
Trait Implementations§
Source§impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> AsyncKeyPathLike<Root, MutRoot> for KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>where
First: SyncKeyPathLike<Root, Value, MutRoot, MutValue>,
Second: AsyncKeyPathLike<Value, MutValue, Value = Value2, MutValue = MutValue2>,
impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> AsyncKeyPathLike<Root, MutRoot> for KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>where
First: SyncKeyPathLike<Root, Value, MutRoot, MutValue>,
Second: AsyncKeyPathLike<Value, MutValue, Value = Value2, MutValue = MutValue2>,
Source§impl<R: Clone, V: Clone, V2: Clone, Root: Clone, Value: Clone, Value2: Clone, MutRoot: Clone, MutValue: Clone, MutValue2: Clone, First: Clone, Second: Clone> Clone for KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>
impl<R: Clone, V: Clone, V2: Clone, Root: Clone, Value: Clone, Value2: Clone, MutRoot: Clone, MutValue: Clone, MutValue2: Clone, First: Clone, Second: Clone> Clone for KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>
Source§fn clone(
&self,
) -> KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>
fn clone( &self, ) -> KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> Freeze for KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>
impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> RefUnwindSafe for KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>where
First: RefUnwindSafe,
Second: RefUnwindSafe,
R: RefUnwindSafe,
V: RefUnwindSafe,
V2: RefUnwindSafe,
Root: RefUnwindSafe,
Value: RefUnwindSafe,
Value2: RefUnwindSafe,
MutRoot: RefUnwindSafe,
MutValue: RefUnwindSafe,
MutValue2: RefUnwindSafe,
impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> Send for KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>
impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> Sync for KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>
impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> Unpin for KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>
impl<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second> UnwindSafe for KpThenAsyncKeyPath<R, V, V2, Root, Value, Value2, MutRoot, MutValue, MutValue2, First, Second>where
First: UnwindSafe,
Second: UnwindSafe,
R: UnwindSafe,
V: UnwindSafe,
V2: UnwindSafe,
Root: UnwindSafe,
Value: UnwindSafe,
Value2: UnwindSafe,
MutRoot: UnwindSafe,
MutValue: UnwindSafe,
MutValue2: UnwindSafe,
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