#[repr(transparent)]
pub(crate) struct NeverShortCircuit<T>(pub T);
Expand description

An adapter for implementing non-try methods via the Try implementation.

Conceptually the same as Result<T, !>, but requiring less work in trait solving and inhabited-ness checking and such, by being an obvious newtype and not having From bounds lying around.

Not currently planned to be exposed publicly, so just pub(crate).

Tuple Fields§

§0: T

Implementations§

Implementation for building ConstFnMutClosure for wrapping the output of a ~const FnMut in a NeverShortCircuit.

Trait Implementations§

🔬This is a nightly-only experimental API. (try_trait_v2 #84277)
Constructs the type from a compatible Residual type. Read more
🔬This is a nightly-only experimental API. (try_trait_v2 #84277)
The type of the value produced by ? when not short-circuiting.
🔬This is a nightly-only experimental API. (try_trait_v2 #84277)
The type of the value passed to FromResidual::from_residual as part of ? when short-circuiting. Read more
🔬This is a nightly-only experimental API. (try_trait_v2 #84277)
Used in ? to decide whether the operator should produce a value (because this returned ControlFlow::Continue) or propagate a value back to the caller (because this returned ControlFlow::Break). Read more
🔬This is a nightly-only experimental API. (try_trait_v2 #84277)
Constructs the type from its Output type. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

🔬This is a nightly-only experimental API. (sized_type_properties)
true if this type requires no storage. false if its size is greater than zero. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.