#[repr(transparent)]pub struct NestedFieldPath<T> {
pub list: T,
}
Expand description
A type-level representation of a chain of field accesses,like .a.b.c.d
.
This is the type that fp!(a.b)
and fp!(::Foo.bar.baz)
construct.
Note: fp!(::Foo.bar)
constructs a VariantField
.
§Construction
You can construct this using (not an exhaustive list):
-
fp
macro,when you access a nested field -
The
NestedFieldPath{list}
struct literal -
The
NEW
associated constant,ifT
implementscore_extensions::ConstDefault
(reexported instructural::reexports::ConstDefault
)
§Examples
You can look for examples of using this in the single-field
StructuralExt methods,
like field_
and field_mut
.
Fields§
§list: T
The list of fields this traverses to access a nested field.
Implementations§
Source§impl<T> NestedFieldPath<T>where
T: ConstDefault,
impl<T> NestedFieldPath<T>where
T: ConstDefault,
Source§impl<T> NestedFieldPath<(T,)>
impl<T> NestedFieldPath<(T,)>
Source§impl<T> NestedFieldPath<T>
impl<T> NestedFieldPath<T>
Source§impl<T> NestedFieldPath<T>
impl<T> NestedFieldPath<T>
Sourcepub fn push<U, V>(self, _other: U) -> NestedFieldPath<V>
pub fn push<U, V>(self, _other: U) -> NestedFieldPath<V>
Constructs a new NestedFieldPath with _other
appended at the end.
Example arguments:fp!(a)
/fp!(::Foo.bar)
/fp!(::Foo)
Sourcepub fn append<U>(
self,
_other: NestedFieldPath<U>,
) -> NestedFieldPath<AppendOut<T, U>>
pub fn append<U>( self, _other: NestedFieldPath<U>, ) -> NestedFieldPath<AppendOut<T, U>>
Constructs a new NestedFieldPath with _other
appended at the end.
Example arguments:fp!(a,b)
/fp!(::Foo.bar.baz)
Sourcepub const fn into_set(self) -> FieldPathSet<(Self,), UniquePaths>
pub const fn into_set(self) -> FieldPathSet<(Self,), UniquePaths>
Converts this NestedFieldPath
to a FieldPathSet
.
§Example
use structural::{StructuralExt, fp};
let tup=(3,(5,8),(13,21));
assert_eq!( tup.fields(fp!(2.0).into_set()), (&13,) );
Source§impl<C> NestedFieldPath<(C,)>
impl<C> NestedFieldPath<(C,)>
Sourcepub fn into_component(self) -> C
pub fn into_component(self) -> C
Unwraps this non-nested field path into C
.
This can also be done with path.list.0
.
Trait Implementations§
Source§impl<T, U> Append<NestedFieldPath<U>> for NestedFieldPath<T>where
T: Append<U>,
impl<T, U> Append<NestedFieldPath<U>> for NestedFieldPath<T>where
T: Append<U>,
Source§impl<T: Clone> Clone for NestedFieldPath<T>
impl<T: Clone> Clone for NestedFieldPath<T>
Source§fn clone(&self) -> NestedFieldPath<T>
fn clone(&self) -> NestedFieldPath<T>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl<T> ConstDefault for NestedFieldPath<T>where
T: ConstDefault,
impl<T> ConstDefault for NestedFieldPath<T>where
T: ConstDefault,
Source§impl<T> Debug for NestedFieldPath<T>
impl<T> Debug for NestedFieldPath<T>
Source§impl<T: Default> Default for NestedFieldPath<T>
impl<T: Default> Default for NestedFieldPath<T>
Source§fn default() -> NestedFieldPath<T>
fn default() -> NestedFieldPath<T>
Source§impl<T> IsMultiFieldPath for NestedFieldPath<T>
impl<T> IsMultiFieldPath for NestedFieldPath<T>
Source§type PathUniqueness = UniquePaths
type PathUniqueness = UniquePaths
Source§impl<T> Ord for NestedFieldPath<T>
impl<T> Ord for NestedFieldPath<T>
Source§impl<T> PartialEq for NestedFieldPath<T>
impl<T> PartialEq for NestedFieldPath<T>
Source§impl<T> PartialOrd for NestedFieldPath<T>
impl<T> PartialOrd for NestedFieldPath<T>
Source§impl<T, U, P> PushBack<NestedFieldPath<P>> for FieldPathSet<T, U>where
T: PushBack<NestedFieldPath<P>>,
impl<T, U, P> PushBack<NestedFieldPath<P>> for FieldPathSet<T, U>where
T: PushBack<NestedFieldPath<P>>,
Source§type Output = FieldPathSet<<T as PushBack<NestedFieldPath<P>>>::Output, AliasedPaths>
type Output = FieldPathSet<<T as PushBack<NestedFieldPath<P>>>::Output, AliasedPaths>
Source§impl<T, S> PushBack<S> for NestedFieldPath<T>where
T: PushBack<S>,
impl<T, S> PushBack<S> for NestedFieldPath<T>where
T: PushBack<S>,
Source§impl<This> RevFieldErr<This> for NestedFieldPath<()>where
This: ?Sized,
impl<This> RevFieldErr<This> for NestedFieldPath<()>where
This: ?Sized,
Source§type Err = InfallibleAccess
type Err = InfallibleAccess
rev_*
methods. Read moreSource§impl<This, F0> RevFieldErr<This> for NestedFieldPath<(F0,)>where
This: ?Sized,
F0: RevFieldErr<This>,
impl<This, F0> RevFieldErr<This> for NestedFieldPath<(F0,)>where
This: ?Sized,
F0: RevFieldErr<This>,
Source§impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, F5, T5, E5, F6, T6, E6, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, F6, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
F2: RevFieldErr<T1, Ty = T2, Err = E2>,
E2: IsFieldErr,
T2: ?Sized,
F3: RevFieldErr<T2, Ty = T3, Err = E3>,
E3: IsFieldErr,
T3: ?Sized,
F4: RevFieldErr<T3, Ty = T4, Err = E4>,
E4: IsFieldErr,
T4: ?Sized,
F5: RevFieldErr<T4, Ty = T5, Err = E5>,
E5: IsFieldErr,
T5: ?Sized,
F6: RevFieldErr<T5, Ty = T6, Err = E6>,
E6: IsFieldErr,
T6: ?Sized,
FL: RevFieldErr<T6, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, E2, E3, E4, E5, E6, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, F5, T5, E5, F6, T6, E6, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, F6, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
F2: RevFieldErr<T1, Ty = T2, Err = E2>,
E2: IsFieldErr,
T2: ?Sized,
F3: RevFieldErr<T2, Ty = T3, Err = E3>,
E3: IsFieldErr,
T3: ?Sized,
F4: RevFieldErr<T3, Ty = T4, Err = E4>,
E4: IsFieldErr,
T4: ?Sized,
F5: RevFieldErr<T4, Ty = T5, Err = E5>,
E5: IsFieldErr,
T5: ?Sized,
F6: RevFieldErr<T5, Ty = T6, Err = E6>,
E6: IsFieldErr,
T6: ?Sized,
FL: RevFieldErr<T6, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, E2, E3, E4, E5, E6, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
Source§impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, F5, T5, E5, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
F2: RevFieldErr<T1, Ty = T2, Err = E2>,
E2: IsFieldErr,
T2: ?Sized,
F3: RevFieldErr<T2, Ty = T3, Err = E3>,
E3: IsFieldErr,
T3: ?Sized,
F4: RevFieldErr<T3, Ty = T4, Err = E4>,
E4: IsFieldErr,
T4: ?Sized,
F5: RevFieldErr<T4, Ty = T5, Err = E5>,
E5: IsFieldErr,
T5: ?Sized,
FL: RevFieldErr<T5, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, E2, E3, E4, E5, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, F5, T5, E5, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
F2: RevFieldErr<T1, Ty = T2, Err = E2>,
E2: IsFieldErr,
T2: ?Sized,
F3: RevFieldErr<T2, Ty = T3, Err = E3>,
E3: IsFieldErr,
T3: ?Sized,
F4: RevFieldErr<T3, Ty = T4, Err = E4>,
E4: IsFieldErr,
T4: ?Sized,
F5: RevFieldErr<T4, Ty = T5, Err = E5>,
E5: IsFieldErr,
T5: ?Sized,
FL: RevFieldErr<T5, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, E2, E3, E4, E5, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
Source§impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, F2, F3, F4, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
F2: RevFieldErr<T1, Ty = T2, Err = E2>,
E2: IsFieldErr,
T2: ?Sized,
F3: RevFieldErr<T2, Ty = T3, Err = E3>,
E3: IsFieldErr,
T3: ?Sized,
F4: RevFieldErr<T3, Ty = T4, Err = E4>,
E4: IsFieldErr,
T4: ?Sized,
FL: RevFieldErr<T4, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, E2, E3, E4, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, F2, F3, F4, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
F2: RevFieldErr<T1, Ty = T2, Err = E2>,
E2: IsFieldErr,
T2: ?Sized,
F3: RevFieldErr<T2, Ty = T3, Err = E3>,
E3: IsFieldErr,
T3: ?Sized,
F4: RevFieldErr<T3, Ty = T4, Err = E4>,
E4: IsFieldErr,
T4: ?Sized,
FL: RevFieldErr<T4, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, E2, E3, E4, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
Source§impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, F2, F3, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
F2: RevFieldErr<T1, Ty = T2, Err = E2>,
E2: IsFieldErr,
T2: ?Sized,
F3: RevFieldErr<T2, Ty = T3, Err = E3>,
E3: IsFieldErr,
T3: ?Sized,
FL: RevFieldErr<T3, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, E2, E3, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, F2, F3, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
F2: RevFieldErr<T1, Ty = T2, Err = E2>,
E2: IsFieldErr,
T2: ?Sized,
F3: RevFieldErr<T2, Ty = T3, Err = E3>,
E3: IsFieldErr,
T3: ?Sized,
FL: RevFieldErr<T3, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, E2, E3, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
Source§impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, F2, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
F2: RevFieldErr<T1, Ty = T2, Err = E2>,
E2: IsFieldErr,
T2: ?Sized,
FL: RevFieldErr<T2, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, E2, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, F2, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
F2: RevFieldErr<T1, Ty = T2, Err = E2>,
E2: IsFieldErr,
T2: ?Sized,
FL: RevFieldErr<T2, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, E2, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
Source§impl<F0, T0, E0, F1, T1, E1, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
FL: RevFieldErr<T1, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
impl<F0, T0, E0, F1, T1, E1, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, F1, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
F1: RevFieldErr<T0, Ty = T1, Err = E1>,
E1: IsFieldErr,
T1: ?Sized,
FL: RevFieldErr<T1, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, E1, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
Source§impl<F0, T0, E0, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
FL: RevFieldErr<T0, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
impl<F0, T0, E0, FL, TL, EL, This, CombErr> RevFieldErr<This> for NestedFieldPath<(F0, FL)>where
This: ?Sized,
F0: RevFieldErr<This, Ty = T0, Err = E0>,
E0: IsFieldErr,
T0: ?Sized,
FL: RevFieldErr<T0, Ty = TL, Err = EL>,
EL: IsFieldErr,
TL: ?Sized,
(E0, EL): CombinedErrs<Combined = CombErr>,
CombErr: IsFieldErr,
Source§impl<This> RevFieldType<This> for NestedFieldPath<()>where
This: ?Sized,
impl<This> RevFieldType<This> for NestedFieldPath<()>where
This: ?Sized,
Source§impl<This, F0> RevFieldType<This> for NestedFieldPath<(F0,)>where
This: ?Sized,
F0: RevFieldType<This>,
impl<This, F0> RevFieldType<This> for NestedFieldPath<(F0,)>where
This: ?Sized,
F0: RevFieldType<This>,
Source§type Ty = <F0 as RevFieldType<This>>::Ty
type Ty = <F0 as RevFieldType<This>>::Ty
Source§impl<F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, F6, T6, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, F6, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
F2: RevFieldType<T1, Ty = T2>,
T2: ?Sized,
F3: RevFieldType<T2, Ty = T3>,
T3: ?Sized,
F4: RevFieldType<T3, Ty = T4>,
T4: ?Sized,
F5: RevFieldType<T4, Ty = T5>,
T5: ?Sized,
F6: RevFieldType<T5, Ty = T6>,
T6: ?Sized,
FL: RevFieldType<T6, Ty = TL>,
TL: ?Sized,
impl<F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, F6, T6, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, F6, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
F2: RevFieldType<T1, Ty = T2>,
T2: ?Sized,
F3: RevFieldType<T2, Ty = T3>,
T3: ?Sized,
F4: RevFieldType<T3, Ty = T4>,
T4: ?Sized,
F5: RevFieldType<T4, Ty = T5>,
T5: ?Sized,
F6: RevFieldType<T5, Ty = T6>,
T6: ?Sized,
FL: RevFieldType<T6, Ty = TL>,
TL: ?Sized,
Source§impl<F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
F2: RevFieldType<T1, Ty = T2>,
T2: ?Sized,
F3: RevFieldType<T2, Ty = T3>,
T3: ?Sized,
F4: RevFieldType<T3, Ty = T4>,
T4: ?Sized,
F5: RevFieldType<T4, Ty = T5>,
T5: ?Sized,
FL: RevFieldType<T5, Ty = TL>,
TL: ?Sized,
impl<F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
F2: RevFieldType<T1, Ty = T2>,
T2: ?Sized,
F3: RevFieldType<T2, Ty = T3>,
T3: ?Sized,
F4: RevFieldType<T3, Ty = T4>,
T4: ?Sized,
F5: RevFieldType<T4, Ty = T5>,
T5: ?Sized,
FL: RevFieldType<T5, Ty = TL>,
TL: ?Sized,
Source§impl<F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, F2, F3, F4, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
F2: RevFieldType<T1, Ty = T2>,
T2: ?Sized,
F3: RevFieldType<T2, Ty = T3>,
T3: ?Sized,
F4: RevFieldType<T3, Ty = T4>,
T4: ?Sized,
FL: RevFieldType<T4, Ty = TL>,
TL: ?Sized,
impl<F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, F2, F3, F4, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
F2: RevFieldType<T1, Ty = T2>,
T2: ?Sized,
F3: RevFieldType<T2, Ty = T3>,
T3: ?Sized,
F4: RevFieldType<T3, Ty = T4>,
T4: ?Sized,
FL: RevFieldType<T4, Ty = TL>,
TL: ?Sized,
Source§impl<F0, T0, F1, T1, F2, T2, F3, T3, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, F2, F3, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
F2: RevFieldType<T1, Ty = T2>,
T2: ?Sized,
F3: RevFieldType<T2, Ty = T3>,
T3: ?Sized,
FL: RevFieldType<T3, Ty = TL>,
TL: ?Sized,
impl<F0, T0, F1, T1, F2, T2, F3, T3, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, F2, F3, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
F2: RevFieldType<T1, Ty = T2>,
T2: ?Sized,
F3: RevFieldType<T2, Ty = T3>,
T3: ?Sized,
FL: RevFieldType<T3, Ty = TL>,
TL: ?Sized,
Source§impl<F0, T0, F1, T1, F2, T2, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, F2, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
F2: RevFieldType<T1, Ty = T2>,
T2: ?Sized,
FL: RevFieldType<T2, Ty = TL>,
TL: ?Sized,
impl<F0, T0, F1, T1, F2, T2, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, F2, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
F2: RevFieldType<T1, Ty = T2>,
T2: ?Sized,
FL: RevFieldType<T2, Ty = TL>,
TL: ?Sized,
Source§impl<F0, T0, F1, T1, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
FL: RevFieldType<T1, Ty = TL>,
TL: ?Sized,
impl<F0, T0, F1, T1, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, F1, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
F1: RevFieldType<T0, Ty = T1>,
T1: ?Sized,
FL: RevFieldType<T1, Ty = TL>,
TL: ?Sized,
Source§impl<F0, T0, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
FL: RevFieldType<T0, Ty = TL>,
TL: ?Sized,
impl<F0, T0, FL, TL, This> RevFieldType<This> for NestedFieldPath<(F0, FL)>where
This: ?Sized,
F0: RevFieldType<This, Ty = T0>,
T0: ?Sized,
FL: RevFieldType<T0, Ty = TL>,
TL: ?Sized,
Source§impl<'a, This> RevGetFieldImpl<'a, This> for NestedFieldPath<()>where
This: ?Sized + 'a,
impl<'a, This> RevGetFieldImpl<'a, This> for NestedFieldPath<()>where
This: ?Sized + 'a,
Source§impl<'a, This, F0> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0,)>where
This: ?Sized + 'a,
F0: RevGetFieldImpl<'a, This>,
impl<'a, This, F0> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0,)>where
This: ?Sized + 'a,
F0: RevGetFieldImpl<'a, This>,
Source§impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, F6, T6, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, F6, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldImpl<'a, T1, Ty = T2>,
T2: ?Sized + 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldImpl<'a, T2, Ty = T3>,
T3: ?Sized + 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldImpl<'a, T3, Ty = T4>,
T4: ?Sized + 'a,
F4::Err: IntoFieldErr<CombErr>,
F5: RevGetFieldImpl<'a, T4, Ty = T5>,
T5: ?Sized + 'a,
F5::Err: IntoFieldErr<CombErr>,
F6: RevGetFieldImpl<'a, T5, Ty = T6>,
T6: ?Sized + 'a,
F6::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T6, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, F6, T6, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, F6, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldImpl<'a, T1, Ty = T2>,
T2: ?Sized + 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldImpl<'a, T2, Ty = T3>,
T3: ?Sized + 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldImpl<'a, T3, Ty = T4>,
T4: ?Sized + 'a,
F4::Err: IntoFieldErr<CombErr>,
F5: RevGetFieldImpl<'a, T4, Ty = T5>,
T5: ?Sized + 'a,
F5::Err: IntoFieldErr<CombErr>,
F6: RevGetFieldImpl<'a, T5, Ty = T6>,
T6: ?Sized + 'a,
F6::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T6, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
Source§impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldImpl<'a, T1, Ty = T2>,
T2: ?Sized + 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldImpl<'a, T2, Ty = T3>,
T3: ?Sized + 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldImpl<'a, T3, Ty = T4>,
T4: ?Sized + 'a,
F4::Err: IntoFieldErr<CombErr>,
F5: RevGetFieldImpl<'a, T4, Ty = T5>,
T5: ?Sized + 'a,
F5::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T5, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldImpl<'a, T1, Ty = T2>,
T2: ?Sized + 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldImpl<'a, T2, Ty = T3>,
T3: ?Sized + 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldImpl<'a, T3, Ty = T4>,
T4: ?Sized + 'a,
F4::Err: IntoFieldErr<CombErr>,
F5: RevGetFieldImpl<'a, T4, Ty = T5>,
T5: ?Sized + 'a,
F5::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T5, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
Source§impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldImpl<'a, T1, Ty = T2>,
T2: ?Sized + 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldImpl<'a, T2, Ty = T3>,
T3: ?Sized + 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldImpl<'a, T3, Ty = T4>,
T4: ?Sized + 'a,
F4::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T4, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldImpl<'a, T1, Ty = T2>,
T2: ?Sized + 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldImpl<'a, T2, Ty = T3>,
T3: ?Sized + 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldImpl<'a, T3, Ty = T4>,
T4: ?Sized + 'a,
F4::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T4, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
Source§impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldImpl<'a, T1, Ty = T2>,
T2: ?Sized + 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldImpl<'a, T2, Ty = T3>,
T3: ?Sized + 'a,
F3::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T3, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldImpl<'a, T1, Ty = T2>,
T2: ?Sized + 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldImpl<'a, T2, Ty = T3>,
T3: ?Sized + 'a,
F3::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T3, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
Source§impl<'a, F0, T0, F1, T1, F2, T2, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, F2, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldImpl<'a, T1, Ty = T2>,
T2: ?Sized + 'a,
F2::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T2, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, F2, T2, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, F2, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldImpl<'a, T1, Ty = T2>,
T2: ?Sized + 'a,
F2::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T2, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
Source§impl<'a, F0, T0, F1, T1, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T1, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, F1, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldImpl<'a, T0, Ty = T1>,
T1: ?Sized + 'a,
F1::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T1, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
Source§impl<'a, F0, T0, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T0, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, FL, TL, This, CombErr> RevGetFieldImpl<'a, This> for NestedFieldPath<(F0, FL)>where
This: ?Sized + 'a,
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldImpl<'a, This, Ty = T0>,
T0: ?Sized + 'a,
F0::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldImpl<'a, T0, Ty = TL>,
TL: ?Sized + 'a,
FL::Err: IntoFieldErr<CombErr>,
Source§impl<'a, This> RevGetFieldMutImpl<'a, This> for NestedFieldPath<()>where
This: ?Sized + 'a,
impl<'a, This> RevGetFieldMutImpl<'a, This> for NestedFieldPath<()>where
This: ?Sized + 'a,
Source§fn rev_get_field_mut(
self,
this: &'a mut This,
) -> Result<&'a mut Self::Ty, Self::Err>
fn rev_get_field_mut( self, this: &'a mut This, ) -> Result<&'a mut Self::Ty, Self::Err>
self
represents inside of this
,by mutable reference.Source§impl<'a, This, F0> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0,)>where
This: ?Sized + 'a,
F0: RevGetFieldMutImpl<'a, This>,
impl<'a, This, F0> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0,)>where
This: ?Sized + 'a,
F0: RevGetFieldMutImpl<'a, This>,
Source§fn rev_get_field_mut(
self,
this: &'a mut This,
) -> Result<&'a mut F0::Ty, F0::Err>
fn rev_get_field_mut( self, this: &'a mut This, ) -> Result<&'a mut F0::Ty, F0::Err>
self
represents inside of this
,by mutable reference.Source§impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, F6, T6, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, F6, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldMutImpl<'a, T1, Ty = T2>,
T2: 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldMutImpl<'a, T2, Ty = T3>,
T3: 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldMutImpl<'a, T3, Ty = T4>,
T4: 'a,
F4::Err: IntoFieldErr<CombErr>,
F5: RevGetFieldMutImpl<'a, T4, Ty = T5>,
T5: 'a,
F5::Err: IntoFieldErr<CombErr>,
F6: RevGetFieldMutImpl<'a, T5, Ty = T6>,
T6: 'a,
F6::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T6, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, F6, T6, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, F6, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldMutImpl<'a, T1, Ty = T2>,
T2: 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldMutImpl<'a, T2, Ty = T3>,
T3: 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldMutImpl<'a, T3, Ty = T4>,
T4: 'a,
F4::Err: IntoFieldErr<CombErr>,
F5: RevGetFieldMutImpl<'a, T4, Ty = T5>,
T5: 'a,
F5::Err: IntoFieldErr<CombErr>,
F6: RevGetFieldMutImpl<'a, T5, Ty = T6>,
T6: 'a,
F6::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T6, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
Source§fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
self
represents inside of this
,by mutable reference.Source§impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldMutImpl<'a, T1, Ty = T2>,
T2: 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldMutImpl<'a, T2, Ty = T3>,
T3: 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldMutImpl<'a, T3, Ty = T4>,
T4: 'a,
F4::Err: IntoFieldErr<CombErr>,
F5: RevGetFieldMutImpl<'a, T4, Ty = T5>,
T5: 'a,
F5::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T5, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, F5, T5, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldMutImpl<'a, T1, Ty = T2>,
T2: 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldMutImpl<'a, T2, Ty = T3>,
T3: 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldMutImpl<'a, T3, Ty = T4>,
T4: 'a,
F4::Err: IntoFieldErr<CombErr>,
F5: RevGetFieldMutImpl<'a, T4, Ty = T5>,
T5: 'a,
F5::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T5, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
Source§fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
self
represents inside of this
,by mutable reference.Source§impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldMutImpl<'a, T1, Ty = T2>,
T2: 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldMutImpl<'a, T2, Ty = T3>,
T3: 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldMutImpl<'a, T3, Ty = T4>,
T4: 'a,
F4::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T4, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, F4, T4, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, F4, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldMutImpl<'a, T1, Ty = T2>,
T2: 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldMutImpl<'a, T2, Ty = T3>,
T3: 'a,
F3::Err: IntoFieldErr<CombErr>,
F4: RevGetFieldMutImpl<'a, T3, Ty = T4>,
T4: 'a,
F4::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T4, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
Source§fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
self
represents inside of this
,by mutable reference.Source§impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldMutImpl<'a, T1, Ty = T2>,
T2: 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldMutImpl<'a, T2, Ty = T3>,
T3: 'a,
F3::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T3, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, F2, T2, F3, T3, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, F2, F3, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldMutImpl<'a, T1, Ty = T2>,
T2: 'a,
F2::Err: IntoFieldErr<CombErr>,
F3: RevGetFieldMutImpl<'a, T2, Ty = T3>,
T3: 'a,
F3::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T3, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
Source§fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
self
represents inside of this
,by mutable reference.Source§impl<'a, F0, T0, F1, T1, F2, T2, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, F2, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldMutImpl<'a, T1, Ty = T2>,
T2: 'a,
F2::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T2, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, F2, T2, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, F2, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
F2: RevGetFieldMutImpl<'a, T1, Ty = T2>,
T2: 'a,
F2::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T2, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
Source§fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
self
represents inside of this
,by mutable reference.Source§impl<'a, F0, T0, F1, T1, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T1, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, F1, T1, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, F1, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
F1: RevGetFieldMutImpl<'a, T0, Ty = T1>,
T1: 'a,
F1::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T1, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
Source§fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
self
represents inside of this
,by mutable reference.Source§impl<'a, F0, T0, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T0, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
impl<'a, F0, T0, FL, TL, This, CombErr> RevGetFieldMutImpl<'a, This> for NestedFieldPath<(F0, FL)>where
This: ?Sized + 'a,
Self: RevGetFieldImpl<'a, This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
F0: RevGetFieldMutImpl<'a, This, Ty = T0>,
T0: 'a,
F0::Err: IntoFieldErr<CombErr>,
FL: RevGetFieldMutImpl<'a, T0, Ty = TL>,
TL: 'a + Sized,
FL::Err: IntoFieldErr<CombErr>,
Source§fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
fn rev_get_field_mut(self, field: &'a mut This) -> Result<&'a mut TL, CombErr>
self
represents inside of this
,by mutable reference.Source§impl<'a, This, T> RevGetMultiFieldImpl<'a, This> for NestedFieldPath<T>where
Self: RevGetFieldImpl<'a, This>,
This: 'a + ?Sized,
RGFT<Self, This>: 'a,
Result<&'a RGFT<Self, This>, RGFE<Self, This>>: 'a + NormalizeFields,
impl<'a, This, T> RevGetMultiFieldImpl<'a, This> for NestedFieldPath<T>where
Self: RevGetFieldImpl<'a, This>,
This: 'a + ?Sized,
RGFT<Self, This>: 'a,
Result<&'a RGFT<Self, This>, RGFE<Self, This>>: 'a + NormalizeFields,
Source§type UnnormFields = (Result<&'a <NestedFieldPath<T> as RevFieldType<This>>::Ty, <NestedFieldPath<T> as RevFieldErr<This>>::Err>,)
type UnnormFields = (Result<&'a <NestedFieldPath<T> as RevFieldType<This>>::Ty, <NestedFieldPath<T> as RevFieldErr<This>>::Err>,)
Results<&'a _,_>
s referencing fields.Source§impl<'a, This, T> RevGetMultiFieldMutImpl<'a, This> for NestedFieldPath<T>where
Self: RevGetFieldMutImpl<'a, This>,
This: 'a + ?Sized,
RGFT<Self, This>: 'a,
Result<&'a mut RGFT<Self, This>, RGFE<Self, This>>: NormalizeFields,
Result<*mut RGFT<Self, This>, RGFE<Self, This>>: NormalizeFields,
impl<'a, This, T> RevGetMultiFieldMutImpl<'a, This> for NestedFieldPath<T>where
Self: RevGetFieldMutImpl<'a, This>,
This: 'a + ?Sized,
RGFT<Self, This>: 'a,
Result<&'a mut RGFT<Self, This>, RGFE<Self, This>>: NormalizeFields,
Result<*mut RGFT<Self, This>, RGFE<Self, This>>: NormalizeFields,
Source§type UnnormFieldsMut = (Result<&'a mut <NestedFieldPath<T> as RevFieldType<This>>::Ty, <NestedFieldPath<T> as RevFieldErr<This>>::Err>,)
type UnnormFieldsMut = (Result<&'a mut <NestedFieldPath<T> as RevFieldType<This>>::Ty, <NestedFieldPath<T> as RevFieldErr<This>>::Err>,)
Result<&mut _,E: IsFieldErr>
s.Source§type UnnormFieldsRawMut = (Result<*mut <NestedFieldPath<T> as RevFieldType<This>>::Ty, <NestedFieldPath<T> as RevFieldErr<This>>::Err>,)
type UnnormFieldsRawMut = (Result<*mut <NestedFieldPath<T> as RevFieldType<This>>::Ty, <NestedFieldPath<T> as RevFieldErr<This>>::Err>,)
Result<*mut _,E: IsFieldErr>
s.Source§fn rev_get_multi_field_mut_impl(
self,
this: &'a mut This,
) -> (Result<&'a mut RGFT<Self, This>, RGFE<Self, This>>,)
fn rev_get_multi_field_mut_impl( self, this: &'a mut This, ) -> (Result<&'a mut RGFT<Self, This>, RGFE<Self, This>>,)
this
,
usually a tuple of Result<&mut _,E: IsFieldErr>
s.Source§impl<This> RevIntoFieldImpl<This> for NestedFieldPath<()>
impl<This> RevIntoFieldImpl<This> for NestedFieldPath<()>
Source§impl<This, F0> RevIntoFieldImpl<This> for NestedFieldPath<(F0,)>where
This: ?Sized,
F0: RevIntoFieldImpl<This>,
impl<This, F0> RevIntoFieldImpl<This> for NestedFieldPath<(F0,)>where
This: ?Sized,
F0: RevIntoFieldImpl<This>,
Source§impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, F5, T5, E5, F6, T6, E6, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, F6, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
F2: RevIntoFieldImpl<T1, Ty = T2, Err = E2>,
F3: RevIntoFieldImpl<T2, Ty = T3, Err = E3>,
F4: RevIntoFieldImpl<T3, Ty = T4, Err = E4>,
F5: RevIntoFieldImpl<T4, Ty = T5, Err = E5>,
F6: RevIntoFieldImpl<T5, Ty = T6, Err = E6>,
FL: RevIntoFieldImpl<T6, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
E2: IntoFieldErr<CombErr>,
E3: IntoFieldErr<CombErr>,
E4: IntoFieldErr<CombErr>,
E5: IntoFieldErr<CombErr>,
E6: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, F5, T5, E5, F6, T6, E6, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, F6, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
F2: RevIntoFieldImpl<T1, Ty = T2, Err = E2>,
F3: RevIntoFieldImpl<T2, Ty = T3, Err = E3>,
F4: RevIntoFieldImpl<T3, Ty = T4, Err = E4>,
F5: RevIntoFieldImpl<T4, Ty = T5, Err = E5>,
F6: RevIntoFieldImpl<T5, Ty = T6, Err = E6>,
FL: RevIntoFieldImpl<T6, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
E2: IntoFieldErr<CombErr>,
E3: IntoFieldErr<CombErr>,
E4: IntoFieldErr<CombErr>,
E5: IntoFieldErr<CombErr>,
E6: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
Source§fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
self
represents inside of this
,by value.Source§impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, F5, T5, E5, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
F2: RevIntoFieldImpl<T1, Ty = T2, Err = E2>,
F3: RevIntoFieldImpl<T2, Ty = T3, Err = E3>,
F4: RevIntoFieldImpl<T3, Ty = T4, Err = E4>,
F5: RevIntoFieldImpl<T4, Ty = T5, Err = E5>,
FL: RevIntoFieldImpl<T5, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
E2: IntoFieldErr<CombErr>,
E3: IntoFieldErr<CombErr>,
E4: IntoFieldErr<CombErr>,
E5: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, F5, T5, E5, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, F2, F3, F4, F5, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
F2: RevIntoFieldImpl<T1, Ty = T2, Err = E2>,
F3: RevIntoFieldImpl<T2, Ty = T3, Err = E3>,
F4: RevIntoFieldImpl<T3, Ty = T4, Err = E4>,
F5: RevIntoFieldImpl<T4, Ty = T5, Err = E5>,
FL: RevIntoFieldImpl<T5, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
E2: IntoFieldErr<CombErr>,
E3: IntoFieldErr<CombErr>,
E4: IntoFieldErr<CombErr>,
E5: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
Source§fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
self
represents inside of this
,by value.Source§impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, F2, F3, F4, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
F2: RevIntoFieldImpl<T1, Ty = T2, Err = E2>,
F3: RevIntoFieldImpl<T2, Ty = T3, Err = E3>,
F4: RevIntoFieldImpl<T3, Ty = T4, Err = E4>,
FL: RevIntoFieldImpl<T4, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
E2: IntoFieldErr<CombErr>,
E3: IntoFieldErr<CombErr>,
E4: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, F4, T4, E4, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, F2, F3, F4, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
F2: RevIntoFieldImpl<T1, Ty = T2, Err = E2>,
F3: RevIntoFieldImpl<T2, Ty = T3, Err = E3>,
F4: RevIntoFieldImpl<T3, Ty = T4, Err = E4>,
FL: RevIntoFieldImpl<T4, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
E2: IntoFieldErr<CombErr>,
E3: IntoFieldErr<CombErr>,
E4: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
Source§fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
self
represents inside of this
,by value.Source§impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, F2, F3, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
F2: RevIntoFieldImpl<T1, Ty = T2, Err = E2>,
F3: RevIntoFieldImpl<T2, Ty = T3, Err = E3>,
FL: RevIntoFieldImpl<T3, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
E2: IntoFieldErr<CombErr>,
E3: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, F3, T3, E3, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, F2, F3, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
F2: RevIntoFieldImpl<T1, Ty = T2, Err = E2>,
F3: RevIntoFieldImpl<T2, Ty = T3, Err = E3>,
FL: RevIntoFieldImpl<T3, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
E2: IntoFieldErr<CombErr>,
E3: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
Source§fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
self
represents inside of this
,by value.Source§impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, F2, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
F2: RevIntoFieldImpl<T1, Ty = T2, Err = E2>,
FL: RevIntoFieldImpl<T2, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
E2: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
impl<F0, T0, E0, F1, T1, E1, F2, T2, E2, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, F2, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
F2: RevIntoFieldImpl<T1, Ty = T2, Err = E2>,
FL: RevIntoFieldImpl<T2, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
E2: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
Source§fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
self
represents inside of this
,by value.Source§impl<F0, T0, E0, F1, T1, E1, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
FL: RevIntoFieldImpl<T1, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
impl<F0, T0, E0, F1, T1, E1, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, F1, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
F1: RevIntoFieldImpl<T0, Ty = T1, Err = E1>,
FL: RevIntoFieldImpl<T1, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
E1: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
Source§fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
self
represents inside of this
,by value.Source§impl<F0, T0, E0, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
FL: RevIntoFieldImpl<T0, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
impl<F0, T0, E0, FL, TL, EL, This, CombErr> RevIntoFieldImpl<This> for NestedFieldPath<(F0, FL)>where
Self: RevFieldErr<This, Ty = TL, Err = CombErr>,
CombErr: IsFieldErr,
This: ?Sized,
F0: RevIntoFieldImpl<This, Ty = T0, Err = E0>,
FL: RevIntoFieldImpl<T0, Ty = TL, Err = EL>,
E0: IntoFieldErr<CombErr>,
EL: IntoFieldErr<CombErr>,
Source§fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
fn rev_into_field(self, field: This) -> Result<TL, CombErr>where
This: Sized,
self
represents inside of this
,by value.Source§impl<This, T> RevIntoMultiFieldImpl<This> for NestedFieldPath<T>where
Self: RevIntoFieldImpl<This>,
RGFT<Self, This>: Sized,
Result<RGFT<Self, This>, RGFE<Self, This>>: NormalizeFields,
impl<This, T> RevIntoMultiFieldImpl<This> for NestedFieldPath<T>where
Self: RevIntoFieldImpl<This>,
RGFT<Self, This>: Sized,
Result<RGFT<Self, This>, RGFE<Self, This>>: NormalizeFields,
Source§type UnnormIntoFields = (Result<<NestedFieldPath<T> as RevFieldType<This>>::Ty, <NestedFieldPath<T> as RevFieldErr<This>>::Err>,)
type UnnormIntoFields = (Result<<NestedFieldPath<T> as RevFieldType<This>>::Ty, <NestedFieldPath<T> as RevFieldErr<This>>::Err>,)
Result<_, E: IsFieldErr>
s.Source§impl<This, F0> RevMoveOutFieldImpl<This> for NestedFieldPath<(F0,)>where
This: ?Sized,
F0: RevMoveOutFieldImpl<This>,
impl<This, F0> RevMoveOutFieldImpl<This> for NestedFieldPath<(F0,)>where
This: ?Sized,
F0: RevMoveOutFieldImpl<This>,
Source§impl<S> ToUsize for NestedFieldPath<(S,)>where
S: ToUsize,
Single index NestedFieldPath
s up to 19 digits can be converted to usize
(assuming that usize can store that number)
impl<S> ToUsize for NestedFieldPath<(S,)>where
S: ToUsize,
Single index NestedFieldPath
s up to 19 digits can be converted to usize
(assuming that usize can store that number)
impl<T: Copy> Copy for NestedFieldPath<T>
impl<T> Eq for NestedFieldPath<T>
impl<T> IsSingleFieldPath for NestedFieldPath<T>
impl<F0> ShallowFieldPath for NestedFieldPath<(F0,)>where
F0: ShallowFieldPath,
Auto Trait Implementations§
impl<T> Freeze for NestedFieldPath<T>where
T: Freeze,
impl<T> RefUnwindSafe for NestedFieldPath<T>where
T: RefUnwindSafe,
impl<T> Send for NestedFieldPath<T>where
T: Send,
impl<T> Sync for NestedFieldPath<T>where
T: Sync,
impl<T> Unpin for NestedFieldPath<T>where
T: Unpin,
impl<T> UnwindSafe for NestedFieldPath<T>where
T: 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<This> EnumExt for Thiswhere
This: ?Sized,
impl<This> EnumExt for Thiswhere
This: ?Sized,
Source§fn as_variant<V>(
&self,
vari: TStr<V>,
) -> Result<&VariantProxy<Self, TStr<V>>, &Self>
fn as_variant<V>( &self, vari: TStr<V>, ) -> Result<&VariantProxy<Self, TStr<V>>, &Self>
Source§fn as_mut_variant<V>(
&mut self,
vari: TStr<V>,
) -> Result<&mut VariantProxy<Self, TStr<V>>, &mut Self>
fn as_mut_variant<V>( &mut self, vari: TStr<V>, ) -> Result<&mut VariantProxy<Self, TStr<V>>, &mut Self>
Source§impl<This, T> IntoStructural<T> for Thiswhere
T: FromStructural<This>,
impl<This, T> IntoStructural<T> for Thiswhere
T: FromStructural<This>,
Source§fn into_structural(self) -> T
fn into_structural(self) -> T
Source§impl<'a, This, Path> RevGetMultiField<'a, This> for Pathwhere
This: 'a + ?Sized,
Path: RevGetMultiFieldImpl<'a, This>,
impl<'a, This, Path> RevGetMultiField<'a, This> for Pathwhere
This: 'a + ?Sized,
Path: RevGetMultiFieldImpl<'a, This>,
Source§type Fields = <<Path as RevGetMultiFieldImpl<'a, This>>::UnnormFields as NormalizeFields>::Output
type Fields = <<Path as RevGetMultiFieldImpl<'a, This>>::UnnormFields as NormalizeFields>::Output
Option<&_>
s and &_
s.Source§fn rev_get_multi_field(
self,
this: &'a This,
) -> <Path as RevGetMultiField<'a, This>>::Fields
fn rev_get_multi_field( self, this: &'a This, ) -> <Path as RevGetMultiField<'a, This>>::Fields
this
,
usually a tuple of Option<&_>
s and &_
s.Source§impl<'a, This, Path> RevGetMultiFieldMut<'a, This> for Pathwhere
This: 'a + ?Sized,
Path: RevGetMultiFieldMutImpl<'a, This>,
impl<'a, This, Path> RevGetMultiFieldMut<'a, This> for Pathwhere
This: 'a + ?Sized,
Path: RevGetMultiFieldMutImpl<'a, This>,
Source§type FieldsMut = <<Path as RevGetMultiFieldMutImpl<'a, This>>::UnnormFieldsMut as NormalizeFields>::Output
type FieldsMut = <<Path as RevGetMultiFieldMutImpl<'a, This>>::UnnormFieldsMut as NormalizeFields>::Output
Option<&mut _>
s and &mut _
s.Source§type FieldsRawMut = <<Path as RevGetMultiFieldMutImpl<'a, This>>::UnnormFieldsRawMut as NormalizeFields>::Output
type FieldsRawMut = <<Path as RevGetMultiFieldMutImpl<'a, This>>::UnnormFieldsRawMut as NormalizeFields>::Output
Option<*mut _>
s and *mut _
s.Source§fn rev_get_multi_field_mut(
self,
this: &'a mut This,
) -> <Path as RevGetMultiFieldMut<'a, This>>::FieldsMut
fn rev_get_multi_field_mut( self, this: &'a mut This, ) -> <Path as RevGetMultiFieldMut<'a, This>>::FieldsMut
this
,
usually a tuple of Option<&mut _>
s and &mut _
s.Source§unsafe fn rev_get_multi_field_raw_mut(
self,
this: *mut This,
) -> <Path as RevGetMultiFieldMut<'a, This>>::FieldsRawMut
unsafe fn rev_get_multi_field_raw_mut( self, this: *mut This, ) -> <Path as RevGetMultiFieldMut<'a, This>>::FieldsRawMut
this
,
usually a tuple of Option<*mut _>
s and *mut _
s. Read moreSource§impl<This, Path> RevIntoMultiField<This> for Pathwhere
Path: RevIntoMultiFieldImpl<This>,
impl<This, Path> RevIntoMultiField<This> for Pathwhere
Path: RevIntoMultiFieldImpl<This>,
Source§type IntoFields = <<Path as RevIntoMultiFieldImpl<This>>::UnnormIntoFields as NormalizeFields>::Output
type IntoFields = <<Path as RevIntoMultiFieldImpl<This>>::UnnormIntoFields as NormalizeFields>::Output
Option<T>
s and T
s.Source§fn rev_into_multi_field(
self,
this: This,
) -> <Path as RevIntoMultiField<This>>::IntoFields
fn rev_into_multi_field( self, this: This, ) -> <Path as RevIntoMultiField<This>>::IntoFields
this
into multiple fields by value.
usually a tuple of Option<T>
s and T
s.Source§impl<T> SelfOps for Twhere
T: ?Sized,
impl<T> SelfOps for Twhere
T: ?Sized,
Source§const T: PhantomData<fn() -> Self> = PhantomData
const T: PhantomData<fn() -> Self> = PhantomData
Type::T
to pass it in methods with _:VariantPhantom<T>
parameters. Read moreSource§const T_D: PhantomData<Self> = PhantomData
const T_D: PhantomData<Self> = PhantomData
Source§fn assert_ty(self, _other: PhantomData<fn() -> Self>) -> Selfwhere
Self: Sized,
fn assert_ty(self, _other: PhantomData<fn() -> Self>) -> Selfwhere
Self: Sized,
other
is the same type as self
.Source§fn assert_ty_ref(&self, _other: PhantomData<fn() -> Self>) -> &Selfwhere
Self: Sized,
fn assert_ty_ref(&self, _other: PhantomData<fn() -> Self>) -> &Selfwhere
Self: Sized,
other
is the same type as self
.Source§fn assert_ty_mut(&mut self, _other: PhantomData<fn() -> Self>) -> &mut Selfwhere
Self: Sized,
fn assert_ty_mut(&mut self, _other: PhantomData<fn() -> Self>) -> &mut Selfwhere
Self: Sized,
other
is the same type as self
.Source§fn ty_(&self) -> PhantomData<fn() -> Self>
fn ty_(&self) -> PhantomData<fn() -> Self>
Source§fn ty_inv(&self) -> PhantomData<fn(Self) -> Self>
fn ty_inv(&self) -> PhantomData<fn(Self) -> Self>
Source§fn ty_inv_ref(&self) -> PhantomData<Cell<&Self>>
fn ty_inv_ref(&self) -> PhantomData<Cell<&Self>>
Source§fn eq_id(&self, other: &Self) -> bool
fn eq_id(&self, other: &Self) -> bool
Source§fn piped<F, U>(self, f: F) -> U
fn piped<F, U>(self, f: F) -> U
Source§fn piped_ref<'a, F, U>(&'a self, f: F) -> Uwhere
F: FnOnce(&'a Self) -> U,
fn piped_ref<'a, F, U>(&'a self, f: F) -> Uwhere
F: FnOnce(&'a Self) -> U,
piped
except that the function takes &Self
Useful for functions that take &Self
instead of Self
. Read moreSource§fn piped_mut<'a, F, U>(&'a mut self, f: F) -> Uwhere
F: FnOnce(&'a mut Self) -> U,
fn piped_mut<'a, F, U>(&'a mut self, f: F) -> Uwhere
F: FnOnce(&'a mut Self) -> U,
piped
except that the function takes &mut Self
.
Useful for functions that take &mut Self
instead of Self
.Source§fn mutated<F>(self, f: F) -> Self
fn mutated<F>(self, f: F) -> Self
Source§fn observe<F>(self, f: F) -> Self
fn observe<F>(self, f: F) -> Self
Source§fn into_<T>(self, _: PhantomData<fn() -> T>) -> Twhere
Self: Into<T>,
fn into_<T>(self, _: PhantomData<fn() -> T>) -> Twhere
Self: Into<T>,
Source§fn as_ref_<T>(&self) -> &T
fn as_ref_<T>(&self) -> &T
.as_ref_::<_>()
syntax. Read moreSource§impl<T> StructuralExt for Twhere
T: ?Sized,
impl<T> StructuralExt for Twhere
T: ?Sized,
Source§fn field_<'a, P>(
&'a self,
path: P,
) -> NormalizeFieldsOut<Result<&'a P::Ty, P::Err>>
fn field_<'a, P>( &'a self, path: P, ) -> NormalizeFieldsOut<Result<&'a P::Ty, P::Err>>
path
. Read moreSource§fn fields<'a, P>(&'a self, path: P) -> RevGetMultiFieldOut<'a, P, Self>where
P: RevGetMultiField<'a, Self>,
fn fields<'a, P>(&'a self, path: P) -> RevGetMultiFieldOut<'a, P, Self>where
P: RevGetMultiField<'a, Self>,
path
. Read moreSource§fn cloned_fields<'a, P>(
&'a self,
path: P,
) -> ClonedOut<RevGetMultiFieldOut<'a, P, Self>>
fn cloned_fields<'a, P>( &'a self, path: P, ) -> ClonedOut<RevGetMultiFieldOut<'a, P, Self>>
path
. Read moreSource§fn field_mut<'a, P>(
&'a mut self,
path: P,
) -> NormalizeFieldsOut<Result<&'a mut P::Ty, P::Err>>
fn field_mut<'a, P>( &'a mut self, path: P, ) -> NormalizeFieldsOut<Result<&'a mut P::Ty, P::Err>>
path
. Read moreSource§fn fields_mut<'a, P>(
&'a mut self,
path: P,
) -> RevGetMultiFieldMutOut<'a, P, Self>where
P: RevGetMultiFieldMut<'a, Self>,
fn fields_mut<'a, P>(
&'a mut self,
path: P,
) -> RevGetMultiFieldMutOut<'a, P, Self>where
P: RevGetMultiFieldMut<'a, Self>,
path
. Read moreSource§fn into_field<P>(self, path: P) -> NormalizeFieldsOut<Result<P::Ty, P::Err>>
fn into_field<P>(self, path: P) -> NormalizeFieldsOut<Result<P::Ty, P::Err>>
path
. Read moreSource§fn into_fields<P>(self, path: P) -> RevIntoMultiFieldOut<P, Self>where
P: RevIntoMultiField<Self>,
Self: Sized,
fn into_fields<P>(self, path: P) -> RevIntoMultiFieldOut<P, Self>where
P: RevIntoMultiField<Self>,
Self: Sized,
self
into multiple fields by value. Read moreSource§fn is_variant<P>(&self, _path: P) -> bool
fn is_variant<P>(&self, _path: P) -> bool
Source§fn into_struc<U>(self) -> Uwhere
Self: IntoStructural<U>,
fn into_struc<U>(self) -> Uwhere
Self: IntoStructural<U>,
IntoStructural
. Read moreSource§fn try_into_struc<U>(self) -> Result<U, TryFromError<Self, Self::Error>>where
Self: TryIntoStructural<U>,
fn try_into_struc<U>(self) -> Result<U, TryFromError<Self, Self::Error>>where
Self: TryIntoStructural<U>,
TryIntoStructural
. Read moreSource§impl<This, T> TryIntoStructural<T> for Thiswhere
T: TryFromStructural<This>,
impl<This, T> TryIntoStructural<T> for Thiswhere
T: TryFromStructural<This>,
Source§type Error = <T as TryFromStructural<This>>::Error
type Error = <T as TryFromStructural<This>>::Error
TryFromError
,
returned from try_into_structural
on conversion error.