Struct casper_types::U256
source · [−]Expand description
Little-endian large integer type
Tuple Fields
0: [u64; 4]
Implementations
sourceimpl U256
impl U256
sourcepub fn from_str_radix(txt: &str, radix: u32) -> Result<Self, FromStrRadixErr>
pub fn from_str_radix(txt: &str, radix: u32) -> Result<Self, FromStrRadixErr>
Converts a string slice in a given base to an integer. Only supports radixes of 10 and 16.
sourcepub fn from_dec_str(value: &str) -> Result<Self, FromDecStrErr>
pub fn from_dec_str(value: &str) -> Result<Self, FromDecStrErr>
Convert from a decimal string.
sourcepub fn as_u64(&self) -> u64
pub fn as_u64(&self) -> u64
Conversion to u64 with overflow checking
Panics
Panics if the number is larger than u64::max_value().
sourcepub fn as_usize(&self) -> usize
pub fn as_usize(&self) -> usize
Conversion to usize with overflow checking
Panics
Panics if the number is larger than usize::max_value().
sourcepub fn leading_zeros(&self) -> u32
pub fn leading_zeros(&self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub fn trailing_zeros(&self) -> u32
pub fn trailing_zeros(&self) -> u32
Returns the number of trailing zeros in the binary representation of self.
sourcepub fn to_big_endian(&self, bytes: &mut [u8])
pub fn to_big_endian(&self, bytes: &mut [u8])
Write to the slice in big-endian format.
sourcepub fn to_little_endian(&self, bytes: &mut [u8])
pub fn to_little_endian(&self, bytes: &mut [u8])
Write to the slice in little-endian format.
sourcepub fn integer_sqrt(&self) -> Self
pub fn integer_sqrt(&self) -> Self
Compute the highest n
such that n * n <= self
.
sourcepub fn pow(self, expon: Self) -> Self
pub fn pow(self, expon: Self) -> Self
Fast exponentiation by squaring https://en.wikipedia.org/wiki/Exponentiation_by_squaring
Panics
Panics if the result overflows the type.
sourcepub fn overflowing_pow(self, expon: Self) -> (Self, bool)
pub fn overflowing_pow(self, expon: Self) -> (Self, bool)
Fast exponentiation by squaring. Returns result and overflow flag.
sourcepub fn checked_pow(self, expon: U256) -> Option<U256>
pub fn checked_pow(self, expon: U256) -> Option<U256>
Checked exponentiation. Returns None
if overflow occurred.
sourcepub fn saturating_add(self, other: U256) -> U256
pub fn saturating_add(self, other: U256) -> U256
Addition which saturates at the maximum value (Self::max_value()).
sourcepub fn checked_add(self, other: U256) -> Option<U256>
pub fn checked_add(self, other: U256) -> Option<U256>
Checked addition. Returns None
if overflow occurred.
sourcepub fn overflowing_sub(self, other: U256) -> (U256, bool)
pub fn overflowing_sub(self, other: U256) -> (U256, bool)
Subtraction which underflows and returns a flag if it does.
sourcepub fn saturating_sub(self, other: U256) -> U256
pub fn saturating_sub(self, other: U256) -> U256
Subtraction which saturates at zero.
sourcepub fn checked_sub(self, other: U256) -> Option<U256>
pub fn checked_sub(self, other: U256) -> Option<U256>
Checked subtraction. Returns None
if overflow occurred.
sourcepub fn overflowing_mul(self, other: U256) -> (U256, bool)
pub fn overflowing_mul(self, other: U256) -> (U256, bool)
Multiply with overflow, returning a flag if it does.
sourcepub fn saturating_mul(self, other: U256) -> U256
pub fn saturating_mul(self, other: U256) -> U256
Multiplication which saturates at the maximum value..
sourcepub fn checked_mul(self, other: U256) -> Option<U256>
pub fn checked_mul(self, other: U256) -> Option<U256>
Checked multiplication. Returns None
if overflow occurred.
sourcepub fn checked_div(self, other: U256) -> Option<U256>
pub fn checked_div(self, other: U256) -> Option<U256>
Checked division. Returns None
if other == 0
.
sourcepub fn checked_rem(self, other: U256) -> Option<U256>
pub fn checked_rem(self, other: U256) -> Option<U256>
Checked modulus. Returns None
if other == 0
.
sourcepub fn checked_neg(self) -> Option<U256>
pub fn checked_neg(self) -> Option<U256>
Checked negation. Returns None
unless self == 0
.
sourcepub fn from_big_endian(slice: &[u8]) -> Self
pub fn from_big_endian(slice: &[u8]) -> Self
Converts from big endian representation bytes in memory.
sourcepub fn from_little_endian(slice: &[u8]) -> Self
pub fn from_little_endian(slice: &[u8]) -> Self
Converts from little endian representation bytes in memory.
Trait Implementations
sourceimpl AddAssign<U256> for U256
impl AddAssign<U256> for U256
sourcefn add_assign(&mut self, other: U256)
fn add_assign(&mut self, other: U256)
Performs the +=
operation. Read more
sourceimpl AsPrimitive<U128> for U256
impl AsPrimitive<U128> for U256
sourceimpl AsPrimitive<U256> for i32
impl AsPrimitive<U256> for i32
sourceimpl AsPrimitive<U256> for i64
impl AsPrimitive<U256> for i64
sourceimpl AsPrimitive<U256> for u8
impl AsPrimitive<U256> for u8
sourceimpl AsPrimitive<U256> for u32
impl AsPrimitive<U256> for u32
sourceimpl AsPrimitive<U256> for u64
impl AsPrimitive<U256> for u64
sourceimpl AsPrimitive<U256> for U128
impl AsPrimitive<U256> for U128
sourceimpl AsPrimitive<U256> for U256
impl AsPrimitive<U256> for U256
sourceimpl AsPrimitive<U256> for U512
impl AsPrimitive<U256> for U512
sourceimpl AsPrimitive<U512> for U256
impl AsPrimitive<U512> for U256
sourceimpl AsPrimitive<i32> for U256
impl AsPrimitive<i32> for U256
sourceimpl AsPrimitive<i64> for U256
impl AsPrimitive<i64> for U256
sourceimpl AsPrimitive<u32> for U256
impl AsPrimitive<u32> for U256
sourceimpl AsPrimitive<u64> for U256
impl AsPrimitive<u64> for U256
sourceimpl AsPrimitive<u8> for U256
impl AsPrimitive<u8> for U256
sourceimpl CheckedMul for U256
impl CheckedMul for U256
sourceimpl CheckedSub for U256
impl CheckedSub for U256
sourceimpl<'de> Deserialize<'de> for U256
impl<'de> Deserialize<'de> for U256
sourcefn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read more
sourceimpl Distribution<U256> for Standard
impl Distribution<U256> for Standard
sourcefn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> U256
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> U256
Generate a random value of T
, using rng
as the source of randomness.
sourcefn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
Create an iterator that generates random values of T
, using rng
as
the source of randomness. Read more
sourceimpl<T> DivAssign<T> for U256 where
T: Into<U256>,
impl<T> DivAssign<T> for U256 where
T: Into<U256>,
sourcefn div_assign(&mut self, other: T)
fn div_assign(&mut self, other: T)
Performs the /=
operation. Read more
sourceimpl Integer for U256
impl Integer for U256
sourcefn div_floor(&self, other: &Self) -> Self
fn div_floor(&self, other: &Self) -> Self
Unsigned integer division. Returns the same result as div
(/
).
sourcefn mod_floor(&self, other: &Self) -> Self
fn mod_floor(&self, other: &Self) -> Self
Unsigned integer modulo operation. Returns the same result as rem
(%
).
sourcefn gcd(&self, other: &Self) -> Self
fn gcd(&self, other: &Self) -> Self
Calculates the Greatest Common Divisor (GCD) of the number and other
sourcefn lcm(&self, other: &Self) -> Self
fn lcm(&self, other: &Self) -> Self
Calculates the Lowest Common Multiple (LCM) of the number and other
.
sourcefn gcd_lcm(&self, other: &Self) -> (Self, Self)
fn gcd_lcm(&self, other: &Self) -> (Self, Self)
Calculates the Greatest Common Divisor (GCD) and
Lowest Common Multiple (LCM) of the number and other
.
sourcefn is_multiple_of(&self, other: &Self) -> bool
fn is_multiple_of(&self, other: &Self) -> bool
Returns true
if the number is a multiple of other
.
sourcefn div_rem(&self, other: &Self) -> (Self, Self)
fn div_rem(&self, other: &Self) -> (Self, Self)
Simultaneous truncated integer division and modulus.
sourcefn extended_gcd(&self, other: &Self) -> ExtendedGcd<Self> where
Self: Clone,
fn extended_gcd(&self, other: &Self) -> ExtendedGcd<Self> where
Self: Clone,
Greatest common divisor and Bézout coefficients. Read more
sourcefn extended_gcd_lcm(&self, other: &Self) -> (ExtendedGcd<Self>, Self) where
Self: Clone + Signed,
fn extended_gcd_lcm(&self, other: &Self) -> (ExtendedGcd<Self>, Self) where
Self: Clone + Signed,
Greatest common divisor, least common multiple, and Bézout coefficients.
sourcefn div_mod_floor(&self, other: &Self) -> (Self, Self)
fn div_mod_floor(&self, other: &Self) -> (Self, Self)
Simultaneous floored integer division and modulus.
Returns (quotient, remainder)
. Read more
sourcefn next_multiple_of(&self, other: &Self) -> Self where
Self: Clone,
fn next_multiple_of(&self, other: &Self) -> Self where
Self: Clone,
Rounds up to nearest multiple of argument. Read more
sourcefn prev_multiple_of(&self, other: &Self) -> Self where
Self: Clone,
fn prev_multiple_of(&self, other: &Self) -> Self where
Self: Clone,
Rounds down to nearest multiple of argument. Read more
sourceimpl MulAssign<U256> for U256
impl MulAssign<U256> for U256
sourcefn mul_assign(&mut self, other: U256)
fn mul_assign(&mut self, other: U256)
Performs the *=
operation. Read more
sourceimpl MulAssign<i16> for U256
impl MulAssign<i16> for U256
sourcefn mul_assign(&mut self, other: i16)
fn mul_assign(&mut self, other: i16)
Performs the *=
operation. Read more
sourceimpl MulAssign<i32> for U256
impl MulAssign<i32> for U256
sourcefn mul_assign(&mut self, other: i32)
fn mul_assign(&mut self, other: i32)
Performs the *=
operation. Read more
sourceimpl MulAssign<i64> for U256
impl MulAssign<i64> for U256
sourcefn mul_assign(&mut self, other: i64)
fn mul_assign(&mut self, other: i64)
Performs the *=
operation. Read more
sourceimpl MulAssign<i8> for U256
impl MulAssign<i8> for U256
sourcefn mul_assign(&mut self, other: i8)
fn mul_assign(&mut self, other: i8)
Performs the *=
operation. Read more
sourceimpl MulAssign<isize> for U256
impl MulAssign<isize> for U256
sourcefn mul_assign(&mut self, other: isize)
fn mul_assign(&mut self, other: isize)
Performs the *=
operation. Read more
sourceimpl MulAssign<u16> for U256
impl MulAssign<u16> for U256
sourcefn mul_assign(&mut self, other: u16)
fn mul_assign(&mut self, other: u16)
Performs the *=
operation. Read more
sourceimpl MulAssign<u32> for U256
impl MulAssign<u32> for U256
sourcefn mul_assign(&mut self, other: u32)
fn mul_assign(&mut self, other: u32)
Performs the *=
operation. Read more
sourceimpl MulAssign<u64> for U256
impl MulAssign<u64> for U256
sourcefn mul_assign(&mut self, other: u64)
fn mul_assign(&mut self, other: u64)
Performs the *=
operation. Read more
sourceimpl MulAssign<u8> for U256
impl MulAssign<u8> for U256
sourcefn mul_assign(&mut self, other: u8)
fn mul_assign(&mut self, other: u8)
Performs the *=
operation. Read more
sourceimpl MulAssign<usize> for U256
impl MulAssign<usize> for U256
sourcefn mul_assign(&mut self, other: usize)
fn mul_assign(&mut self, other: usize)
Performs the *=
operation. Read more
sourceimpl Num for U256
impl Num for U256
type FromStrRadixErr = UIntParseError
sourcefn from_str_radix(str: &str, radix: u32) -> Result<Self, Self::FromStrRadixErr>
fn from_str_radix(str: &str, radix: u32) -> Result<Self, Self::FromStrRadixErr>
Convert from a string and radix (typically 2..=36
). Read more
sourceimpl Ord for U256
impl Ord for U256
sourceimpl PartialOrd<U256> for U256
impl PartialOrd<U256> for U256
sourcefn partial_cmp(&self, other: &U256) -> Option<Ordering>
fn partial_cmp(&self, other: &U256) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
sourceimpl<T> RemAssign<T> for U256 where
T: Into<U256> + Copy,
impl<T> RemAssign<T> for U256 where
T: Into<U256> + Copy,
sourcefn rem_assign(&mut self, other: T)
fn rem_assign(&mut self, other: T)
Performs the %=
operation. Read more
sourceimpl<T> ShlAssign<T> for U256 where
T: Into<U256>,
impl<T> ShlAssign<T> for U256 where
T: Into<U256>,
sourcefn shl_assign(&mut self, shift: T)
fn shl_assign(&mut self, shift: T)
Performs the <<=
operation. Read more
sourceimpl<T> ShrAssign<T> for U256 where
T: Into<U256>,
impl<T> ShrAssign<T> for U256 where
T: Into<U256>,
sourcefn shr_assign(&mut self, shift: T)
fn shr_assign(&mut self, shift: T)
Performs the >>=
operation. Read more
sourceimpl SubAssign<U256> for U256
impl SubAssign<U256> for U256
sourcefn sub_assign(&mut self, other: U256)
fn sub_assign(&mut self, other: U256)
Performs the -=
operation. Read more
sourceimpl ToBytes for U256
impl ToBytes for U256
sourcefn serialized_length(&self) -> usize
fn serialized_length(&self) -> usize
Returns the length of the Vec<u8>
which would be returned from a successful call to
to_bytes()
or into_bytes()
. The data is not actually serialized, so this call is
relatively cheap. Read more
sourceimpl WrappingAdd for U256
impl WrappingAdd for U256
sourcefn wrapping_add(&self, other: &U256) -> U256
fn wrapping_add(&self, other: &U256) -> U256
Wrapping (modular) addition. Computes self + other
, wrapping around at the boundary of
the type. Read more
sourceimpl WrappingSub for U256
impl WrappingSub for U256
sourcefn wrapping_sub(&self, other: &U256) -> U256
fn wrapping_sub(&self, other: &U256) -> U256
Wrapping (modular) subtraction. Computes self - other
, wrapping around at the boundary
of the type. Read more
impl Copy for U256
impl Eq for U256
impl StructuralEq for U256
impl StructuralPartialEq for U256
impl Unsigned for U256
Auto Trait Implementations
impl RefUnwindSafe for U256
impl Send for U256
impl Sync for U256
impl Unpin for U256
impl UnwindSafe for U256
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
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. Read more
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. Read more
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. Read more
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. Read more
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. Read more
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. Read more
impl<T> PipeAsRef for T
impl<T> PipeAsRef for T
fn pipe_as_ref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: AsRef<T>,
T: 'a,
R: 'a,
fn pipe_as_ref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: AsRef<T>,
T: 'a,
R: 'a,
Pipes a trait borrow into a function that cannot normally be called in suffix position. Read more
fn pipe_as_mut<'a, T, R>(&'a mut self, func: impl FnOnce(&'a mut T) -> R) -> R where
Self: AsMut<T>,
T: 'a,
R: 'a,
fn pipe_as_mut<'a, T, R>(&'a mut self, func: impl FnOnce(&'a mut T) -> R) -> R where
Self: AsMut<T>,
T: 'a,
R: 'a,
Pipes a trait mutable borrow into a function that cannot normally be called in suffix position. Read more
impl<T> PipeBorrow for T
impl<T> PipeBorrow for T
fn pipe_borrow<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: Borrow<T>,
T: 'a,
R: 'a,
fn pipe_borrow<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: Borrow<T>,
T: 'a,
R: 'a,
Pipes a trait borrow into a function that cannot normally be called in suffix position. Read more
fn pipe_borrow_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: BorrowMut<T>,
T: 'a,
R: 'a,
fn pipe_borrow_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: BorrowMut<T>,
T: 'a,
R: 'a,
Pipes a trait mutable borrow into a function that cannot normally be called in suffix position. Read more
impl<T> PipeDeref for T
impl<T> PipeDeref for T
fn pipe_deref<'a, R>(&'a self, func: impl FnOnce(&'a Self::Target) -> R) -> R where
Self: Deref,
R: 'a,
fn pipe_deref<'a, R>(&'a self, func: impl FnOnce(&'a Self::Target) -> R) -> R where
Self: Deref,
R: 'a,
Pipes a dereference into a function that cannot normally be called in suffix position. Read more
fn pipe_deref_mut<'a, R>(
&'a mut self,
func: impl FnOnce(&'a mut Self::Target) -> R
) -> R where
Self: DerefMut,
R: 'a,
fn pipe_deref_mut<'a, R>(
&'a mut self,
func: impl FnOnce(&'a mut Self::Target) -> R
) -> R where
Self: DerefMut,
R: 'a,
Pipes a mutable dereference into a function that cannot normally be called in suffix position. Read more
impl<T> PipeRef for T
impl<T> PipeRef for T
impl<T> Tap for T
impl<T> Tap for T
fn tap<F, R>(self, func: F) -> Self where
F: FnOnce(&Self) -> R,
fn tap<F, R>(self, func: F) -> Self where
F: FnOnce(&Self) -> R,
Provides immutable access for inspection. Read more
fn tap_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&Self) -> R,
fn tap_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&Self) -> R,
Calls tap
in debug builds, and does nothing in release builds.
fn tap_mut<F, R>(self, func: F) -> Self where
F: FnOnce(&mut Self) -> R,
fn tap_mut<F, R>(self, func: F) -> Self where
F: FnOnce(&mut Self) -> R,
Provides mutable access for modification. Read more
fn tap_mut_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&mut Self) -> R,
fn tap_mut_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&mut Self) -> R,
Calls tap_mut
in debug builds, and does nothing in release builds.
impl<T, U> TapAsRef<U> for T where
U: ?Sized,
impl<T, U> TapAsRef<U> for T where
U: ?Sized,
fn tap_ref<F, R>(self, func: F) -> Self where
Self: AsRef<T>,
F: FnOnce(&T) -> R,
fn tap_ref<F, R>(self, func: F) -> Self where
Self: AsRef<T>,
F: FnOnce(&T) -> R,
Provides immutable access to the reference for inspection.
fn tap_ref_dbg<F, R>(self, func: F) -> Self where
Self: AsRef<T>,
F: FnOnce(&T) -> R,
fn tap_ref_dbg<F, R>(self, func: F) -> Self where
Self: AsRef<T>,
F: FnOnce(&T) -> R,
Calls tap_ref
in debug builds, and does nothing in release builds.
fn tap_ref_mut<F, R>(self, func: F) -> Self where
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
fn tap_ref_mut<F, R>(self, func: F) -> Self where
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
Provides mutable access to the reference for modification.
fn tap_ref_mut_dbg<F, R>(self, func: F) -> Self where
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
fn tap_ref_mut_dbg<F, R>(self, func: F) -> Self where
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
Calls tap_ref_mut
in debug builds, and does nothing in release builds.
impl<T, U> TapBorrow<U> for T where
U: ?Sized,
impl<T, U> TapBorrow<U> for T where
U: ?Sized,
fn tap_borrow<F, R>(self, func: F) -> Self where
Self: Borrow<T>,
F: FnOnce(&T) -> R,
fn tap_borrow<F, R>(self, func: F) -> Self where
Self: Borrow<T>,
F: FnOnce(&T) -> R,
Provides immutable access to the borrow for inspection. Read more
fn tap_borrow_dbg<F, R>(self, func: F) -> Self where
Self: Borrow<T>,
F: FnOnce(&T) -> R,
fn tap_borrow_dbg<F, R>(self, func: F) -> Self where
Self: Borrow<T>,
F: FnOnce(&T) -> R,
Calls tap_borrow
in debug builds, and does nothing in release builds.
fn tap_borrow_mut<F, R>(self, func: F) -> Self where
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
fn tap_borrow_mut<F, R>(self, func: F) -> Self where
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
Provides mutable access to the borrow for modification.
fn tap_borrow_mut_dbg<F, R>(self, func: F) -> Self where
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
fn tap_borrow_mut_dbg<F, R>(self, func: F) -> Self where
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
Calls tap_borrow_mut
in debug builds, and does nothing in release
builds. Read more
impl<T> TapDeref for T
impl<T> TapDeref for T
fn tap_deref<F, R>(self, func: F) -> Self where
Self: Deref,
F: FnOnce(&Self::Target) -> R,
fn tap_deref<F, R>(self, func: F) -> Self where
Self: Deref,
F: FnOnce(&Self::Target) -> R,
Immutably dereferences self
for inspection.
fn tap_deref_dbg<F, R>(self, func: F) -> Self where
Self: Deref,
F: FnOnce(&Self::Target) -> R,
fn tap_deref_dbg<F, R>(self, func: F) -> Self where
Self: Deref,
F: FnOnce(&Self::Target) -> R,
Calls tap_deref
in debug builds, and does nothing in release builds.
fn tap_deref_mut<F, R>(self, func: F) -> Self where
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
fn tap_deref_mut<F, R>(self, func: F) -> Self where
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
Mutably dereferences self
for modification.
fn tap_deref_mut_dbg<F, R>(self, func: F) -> Self where
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
fn tap_deref_mut_dbg<F, R>(self, func: F) -> Self where
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
Calls tap_deref_mut
in debug builds, and does nothing in release
builds. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more