Skip to main content

MergeResult

Enum MergeResult 

Source
pub enum MergeResult<T> {
    KeepParent,
    ReplaceOrInsert(T),
    Remove,
}
Expand description

Represents the result of merging multiple instances of a type during context merging.

This enum is used by the Merge trait to determine how merging should affect the parent value. It is up to the implementor to decide whether to keep, replace, or remove it entirely.

See also Merge trait.

Variants§

§

KeepParent

Keep the existing parent value as-is, whether it exists or not.

§

ReplaceOrInsert(T)

Replace the parent value or insert this value if it does not exist.

§

Remove

Remove the value from the parent context entirely.

Trait Implementations§

Source§

impl<T: Debug> Debug for MergeResult<T>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T> Freeze for MergeResult<T>
where T: Freeze,

§

impl<T> RefUnwindSafe for MergeResult<T>
where T: RefUnwindSafe,

§

impl<T> Send for MergeResult<T>
where T: Send,

§

impl<T> Sync for MergeResult<T>
where T: Sync,

§

impl<T> Unpin for MergeResult<T>
where T: Unpin,

§

impl<T> UnsafeUnpin for MergeResult<T>
where T: UnsafeUnpin,

§

impl<T> UnwindSafe for MergeResult<T>
where T: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V