pub struct FoldBuild {
pub target: TypeRef,
pub by_ref: bool,
pub selector: Option<usize>,
pub variants: Vec<FoldVariant>,
}Expand description
A recursively-nested construction for one FoldArg::Build parameter — the
same dispatch shape as a top-level FoldPlan’s core, minus the outer
Option/Vec wrapping (a nested param is built by value).
Fields§
§target: TypeRefOwned type this nested build produces (the constructor parameter type).
by_ref: booltrue when the consuming parameter is &T (the built value is borrowed
at the call site).
selector: Option<usize>Selector leaf index for a combined nested build; None for a single one.
variants: Vec<FoldVariant>Dispatch arms (recursive).
Trait Implementations§
Auto Trait Implementations§
impl !Send for FoldBuild
impl !Sync for FoldBuild
impl Freeze for FoldBuild
impl RefUnwindSafe for FoldBuild
impl Unpin for FoldBuild
impl UnsafeUnpin for FoldBuild
impl UnwindSafe for FoldBuild
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more