pub struct FraudProof<Number, Hash, DomainHeader: HeaderT, MmrHash> {
pub domain_id: DomainId,
pub bad_receipt_hash: HeaderHashFor<DomainHeader>,
pub maybe_mmr_proof: Option<ConsensusChainMmrLeafProof<Number, Hash, MmrHash>>,
pub maybe_domain_runtime_code_proof: Option<DomainRuntimeCodeAt<Number, Hash, MmrHash>>,
pub proof: FraudProofVariant<Number, Hash, MmrHash, DomainHeader>,
}Expand description
Fraud proof for domains.
Fields§
§domain_id: DomainId§bad_receipt_hash: HeaderHashFor<DomainHeader>Hash of the bad receipt this fraud proof targeted
maybe_mmr_proof: Option<ConsensusChainMmrLeafProof<Number, Hash, MmrHash>>The MMR proof for the consensus state root that is used to verify the storage proof
It is set None if the specific fraud proof variant doesn’t contain a storage proof
maybe_domain_runtime_code_proof: Option<DomainRuntimeCodeAt<Number, Hash, MmrHash>>The domain runtime code storage proof
It is set None if the specific fraud proof variant doesn’t require domain runtime code
or the required domain runtime code is available from the current runtime state.
proof: FraudProofVariant<Number, Hash, MmrHash, DomainHeader>The specific fraud proof variant
Implementations§
Source§impl<Number, Hash, MmrHash, DomainHeader: HeaderT> FraudProof<Number, Hash, DomainHeader, MmrHash>
impl<Number, Hash, MmrHash, DomainHeader: HeaderT> FraudProof<Number, Hash, DomainHeader, MmrHash>
pub fn domain_id(&self) -> DomainId
pub fn targeted_bad_receipt_hash(&self) -> HeaderHashFor<DomainHeader>
pub fn is_unexpected_domain_runtime_code_proof(&self) -> bool
pub fn is_unexpected_mmr_proof(&self) -> bool
pub fn dummy_fraud_proof( domain_id: DomainId, bad_receipt_hash: HeaderHashFor<DomainHeader>, ) -> FraudProof<Number, Hash, DomainHeader, MmrHash>
Source§impl<Number, Hash, MmrHash, DomainHeader: HeaderT> FraudProof<Number, Hash, DomainHeader, MmrHash>where
Number: Encode,
Hash: Encode,
MmrHash: Encode,
impl<Number, Hash, MmrHash, DomainHeader: HeaderT> FraudProof<Number, Hash, DomainHeader, MmrHash>where
Number: Encode,
Hash: Encode,
MmrHash: Encode,
Trait Implementations§
Source§impl<Number: Clone, Hash: Clone, DomainHeader: Clone + HeaderT, MmrHash: Clone> Clone for FraudProof<Number, Hash, DomainHeader, MmrHash>
impl<Number: Clone, Hash: Clone, DomainHeader: Clone + HeaderT, MmrHash: Clone> Clone for FraudProof<Number, Hash, DomainHeader, MmrHash>
Source§fn clone(&self) -> FraudProof<Number, Hash, DomainHeader, MmrHash>
fn clone(&self) -> FraudProof<Number, Hash, DomainHeader, MmrHash>
Returns a copy 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 moreSource§impl<Number, Hash, MmrHash, DomainHeader: HeaderT> Debug for FraudProof<Number, Hash, DomainHeader, MmrHash>
impl<Number, Hash, MmrHash, DomainHeader: HeaderT> Debug for FraudProof<Number, Hash, DomainHeader, MmrHash>
Source§impl<Number, Hash, DomainHeader: HeaderT, MmrHash> Decode for FraudProof<Number, Hash, DomainHeader, MmrHash>where
HeaderHashFor<DomainHeader>: Decode,
Option<ConsensusChainMmrLeafProof<Number, Hash, MmrHash>>: Decode,
Option<DomainRuntimeCodeAt<Number, Hash, MmrHash>>: Decode,
FraudProofVariant<Number, Hash, MmrHash, DomainHeader>: Decode,
impl<Number, Hash, DomainHeader: HeaderT, MmrHash> Decode for FraudProof<Number, Hash, DomainHeader, MmrHash>where
HeaderHashFor<DomainHeader>: Decode,
Option<ConsensusChainMmrLeafProof<Number, Hash, MmrHash>>: Decode,
Option<DomainRuntimeCodeAt<Number, Hash, MmrHash>>: Decode,
FraudProofVariant<Number, Hash, MmrHash, DomainHeader>: Decode,
Source§fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy,
) -> Result<Self, Error>
fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy, ) -> Result<Self, Error>
Attempt to deserialise the value from input.
§fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>,
) -> Result<DecodeFinished, Error>where
I: Input,
fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>,
) -> Result<DecodeFinished, Error>where
I: Input,
Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
§fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
Attempt to skip the encoded value from input. Read more
§fn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
Returns the fixed encoded size of the type. Read more
Source§impl<Number, Hash, DomainHeader: HeaderT, MmrHash> Encode for FraudProof<Number, Hash, DomainHeader, MmrHash>where
HeaderHashFor<DomainHeader>: Encode,
Option<ConsensusChainMmrLeafProof<Number, Hash, MmrHash>>: Encode,
Option<DomainRuntimeCodeAt<Number, Hash, MmrHash>>: Encode,
FraudProofVariant<Number, Hash, MmrHash, DomainHeader>: Encode,
impl<Number, Hash, DomainHeader: HeaderT, MmrHash> Encode for FraudProof<Number, Hash, DomainHeader, MmrHash>where
HeaderHashFor<DomainHeader>: Encode,
Option<ConsensusChainMmrLeafProof<Number, Hash, MmrHash>>: Encode,
Option<DomainRuntimeCodeAt<Number, Hash, MmrHash>>: Encode,
FraudProofVariant<Number, Hash, MmrHash, DomainHeader>: Encode,
Source§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
If possible give a hint of expected size of the encoding. Read more
Source§fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy,
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy, )
Convert self to a slice and append it to the destination.
§fn using_encoded<R, F>(&self, f: F) -> R
fn using_encoded<R, F>(&self, f: F) -> R
Convert self to a slice and then invoke the given closure with it.
§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Calculates the encoded size. Read more
Source§impl<Number: PartialEq, Hash: PartialEq, DomainHeader: PartialEq + HeaderT, MmrHash: PartialEq> PartialEq for FraudProof<Number, Hash, DomainHeader, MmrHash>
impl<Number: PartialEq, Hash: PartialEq, DomainHeader: PartialEq + HeaderT, MmrHash: PartialEq> PartialEq for FraudProof<Number, Hash, DomainHeader, MmrHash>
Source§fn eq(&self, other: &FraudProof<Number, Hash, DomainHeader, MmrHash>) -> bool
fn eq(&self, other: &FraudProof<Number, Hash, DomainHeader, MmrHash>) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl<Number, Hash, DomainHeader, MmrHash> TypeInfo for FraudProof<Number, Hash, DomainHeader, MmrHash>where
HeaderHashFor<DomainHeader>: TypeInfo + 'static,
Option<ConsensusChainMmrLeafProof<Number, Hash, MmrHash>>: TypeInfo + 'static,
Option<DomainRuntimeCodeAt<Number, Hash, MmrHash>>: TypeInfo + 'static,
FraudProofVariant<Number, Hash, MmrHash, DomainHeader>: TypeInfo + 'static,
Number: TypeInfo + 'static,
Hash: TypeInfo + 'static,
DomainHeader: HeaderT + TypeInfo + 'static,
MmrHash: TypeInfo + 'static,
impl<Number, Hash, DomainHeader, MmrHash> TypeInfo for FraudProof<Number, Hash, DomainHeader, MmrHash>where
HeaderHashFor<DomainHeader>: TypeInfo + 'static,
Option<ConsensusChainMmrLeafProof<Number, Hash, MmrHash>>: TypeInfo + 'static,
Option<DomainRuntimeCodeAt<Number, Hash, MmrHash>>: TypeInfo + 'static,
FraudProofVariant<Number, Hash, MmrHash, DomainHeader>: TypeInfo + 'static,
Number: TypeInfo + 'static,
Hash: TypeInfo + 'static,
DomainHeader: HeaderT + TypeInfo + 'static,
MmrHash: TypeInfo + 'static,
impl<Number, Hash, DomainHeader: HeaderT, MmrHash> DecodeWithMemTracking for FraudProof<Number, Hash, DomainHeader, MmrHash>where
HeaderHashFor<DomainHeader>: DecodeWithMemTracking,
Option<ConsensusChainMmrLeafProof<Number, Hash, MmrHash>>: DecodeWithMemTracking,
Option<DomainRuntimeCodeAt<Number, Hash, MmrHash>>: DecodeWithMemTracking,
FraudProofVariant<Number, Hash, MmrHash, DomainHeader>: DecodeWithMemTracking,
impl<Number, Hash, DomainHeader: HeaderT, MmrHash> EncodeLike for FraudProof<Number, Hash, DomainHeader, MmrHash>where
HeaderHashFor<DomainHeader>: Encode,
Option<ConsensusChainMmrLeafProof<Number, Hash, MmrHash>>: Encode,
Option<DomainRuntimeCodeAt<Number, Hash, MmrHash>>: Encode,
FraudProofVariant<Number, Hash, MmrHash, DomainHeader>: Encode,
impl<Number: Eq, Hash: Eq, DomainHeader: Eq + HeaderT, MmrHash: Eq> Eq for FraudProof<Number, Hash, DomainHeader, MmrHash>
impl<Number, Hash, DomainHeader: HeaderT, MmrHash> StructuralPartialEq for FraudProof<Number, Hash, DomainHeader, MmrHash>
Auto Trait Implementations§
impl<Number, Hash, DomainHeader, MmrHash> Freeze for FraudProof<Number, Hash, DomainHeader, MmrHash>
impl<Number, Hash, DomainHeader, MmrHash> RefUnwindSafe for FraudProof<Number, Hash, DomainHeader, MmrHash>where
<DomainHeader as Header>::Hash: RefUnwindSafe,
Number: RefUnwindSafe,
Hash: RefUnwindSafe,
MmrHash: RefUnwindSafe,
<DomainHeader as Header>::Number: RefUnwindSafe,
impl<Number, Hash, DomainHeader, MmrHash> Send for FraudProof<Number, Hash, DomainHeader, MmrHash>
impl<Number, Hash, DomainHeader, MmrHash> Sync for FraudProof<Number, Hash, DomainHeader, MmrHash>
impl<Number, Hash, DomainHeader, MmrHash> Unpin for FraudProof<Number, Hash, DomainHeader, MmrHash>
impl<Number, Hash, DomainHeader, MmrHash> UnwindSafe for FraudProof<Number, Hash, DomainHeader, MmrHash>where
<DomainHeader as Header>::Hash: UnwindSafe,
Number: UnwindSafe,
Hash: UnwindSafe,
MmrHash: UnwindSafe,
<DomainHeader as Header>::Number: 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
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> DecodeAll for Twhere
T: Decode,
impl<T> DecodeAll for Twhere
T: Decode,
§fn decode_all(input: &mut &[u8]) -> Result<T, Error>
fn decode_all(input: &mut &[u8]) -> Result<T, Error>
Decode
Self and consume all of the given input data. Read more§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere
T: Decode,
§impl<T> DecodeWithMemLimit for Twhere
T: DecodeWithMemTracking,
impl<T> DecodeWithMemLimit for Twhere
T: DecodeWithMemTracking,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
Causes
self to use its Binary implementation when Debug-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
Causes
self to use its Display implementation when
Debug-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
Causes
self to use its LowerExp implementation when
Debug-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
Causes
self to use its LowerHex implementation when
Debug-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
Causes
self to use its Octal implementation when Debug-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
Causes
self to use its Pointer implementation when
Debug-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
Causes
self to use its UpperExp implementation when
Debug-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
Causes
self to use its UpperHex implementation when
Debug-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
Formats each item in a sequence. Read more
§impl<T> FullLeaf for T
impl<T> FullLeaf for T
§impl<T> Hashable for Twhere
T: Codec,
impl<T> Hashable for Twhere
T: Codec,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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§impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
fn into_tuple(self) -> Dest
§impl<T> IsType<T> for T
impl<T> IsType<T> for T
§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
§impl<T> KeyedVec for Twhere
T: Codec,
impl<T> KeyedVec for Twhere
T: Codec,
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Pipes by value. This is generally the method you want to use. Read more
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
Borrows
self and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
Mutably borrows
self and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
Borrows
self, then passes self.as_ref() into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
Mutably borrows
self, then passes self.as_mut() into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
Borrows
self, then passes self.deref() into the pipe function.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T. Read more§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Immutable access to the
Borrow<B> of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
Mutable access to the
BorrowMut<B> of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
Immutable access to the
AsRef<R> view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
Mutable access to the
AsMut<R> view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Immutable access to the
Deref::Target of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Mutable access to the
Deref::Target of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
Calls
.tap() only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
Calls
.tap_mut() only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
Calls
.tap_borrow() only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
Calls
.tap_borrow_mut() only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
Calls
.tap_ref() only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
Calls
.tap_ref_mut() only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
Calls
.tap_deref() only in debug builds, and is erased in release
builds.§impl<T> TryConv for T
impl<T> TryConv for T
§impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
type Error = <U as TryFromKey<T>>::Error
fn try_into_key(self) -> Result<U, <U as TryFromKey<T>>::Error>
§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from.§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T.