#[repr(transparent)]pub struct NumVector<V: GenericVector>(pub V);Expand description
Wraps a generic vector to provide implementations of num_traits traits.
num_traits is a widely used crate that provides numeric traits for Rust types.
However, unless you want to use these, implementing them on all vector types
would cause conflicts with more inherent methods provided by this library.
Therefore, this wrapper type allows you to opt-in to using num_traits
when needed, without causing conflicts in the main vector types.
Notably, the implementation of MulAdd uses mul_adde under the hood,
which may fall back to separate multiply and add operations if a fused multiply-add
is not available for the target architecture.
Tuple Fields§
§0: VTrait Implementations§
Source§impl<V: NumericVector> Add for NumVector<V>
impl<V: NumericVector> Add for NumVector<V>
Source§impl<V: NumericVector> AddAssign for NumVector<V>
impl<V: NumericVector> AddAssign for NumVector<V>
Source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
+= operation. Read moreSource§impl<V: BitwiseVector> BitAnd for NumVector<V>
impl<V: BitwiseVector> BitAnd for NumVector<V>
Source§impl<V: BitwiseVector> BitAndAssign for NumVector<V>
impl<V: BitwiseVector> BitAndAssign for NumVector<V>
Source§fn bitand_assign(&mut self, rhs: Self)
fn bitand_assign(&mut self, rhs: Self)
&= operation. Read moreSource§impl<V: BitwiseVector> BitOr for NumVector<V>
impl<V: BitwiseVector> BitOr for NumVector<V>
Source§impl<V: BitwiseVector> BitOrAssign for NumVector<V>
impl<V: BitwiseVector> BitOrAssign for NumVector<V>
Source§fn bitor_assign(&mut self, rhs: Self)
fn bitor_assign(&mut self, rhs: Self)
|= operation. Read moreSource§impl<V: BitwiseVector> BitXor for NumVector<V>
impl<V: BitwiseVector> BitXor for NumVector<V>
Source§impl<V: BitwiseVector> BitXorAssign for NumVector<V>
impl<V: BitwiseVector> BitXorAssign for NumVector<V>
Source§fn bitxor_assign(&mut self, rhs: Self)
fn bitxor_assign(&mut self, rhs: Self)
^= operation. Read moreSource§impl<V: NumericVector> Bounded for NumVector<V>
impl<V: NumericVector> Bounded for NumVector<V>
Source§impl<V: GenericVector> Clone for NumVector<V>
impl<V: GenericVector> Clone for NumVector<V>
Source§impl<V: NumericVector> ConstOne for NumVector<V>
impl<V: NumericVector> ConstOne for NumVector<V>
Source§impl<V: NumericVector> ConstZero for NumVector<V>
impl<V: NumericVector> ConstZero for NumVector<V>
impl<V: GenericVector> Copy for NumVector<V>
Source§impl<V: GenericVector> Deref for NumVector<V>
impl<V: GenericVector> Deref for NumVector<V>
Source§impl<V: NumericVector> Div for NumVector<V>
impl<V: NumericVector> Div for NumVector<V>
Source§impl<V: NumericVector> DivAssign for NumVector<V>
impl<V: NumericVector> DivAssign for NumVector<V>
Source§fn div_assign(&mut self, rhs: Self)
fn div_assign(&mut self, rhs: Self)
/= operation. Read moreSource§impl<V> Float for NumVector<V>
Available on crate feature std only.
impl<V> Float for NumVector<V>
std only.Source§fn classify(self) -> FpCategory
fn classify(self) -> FpCategory
Follows the logic of most important classification in the order: NaN (any) > Infinite (any) > Zero (all) > Subnormal (any) > Normal
Source§fn is_sign_negative(self) -> bool
fn is_sign_negative(self) -> bool
Returns true if any lane is negative, false otherwise.
Source§fn is_sign_positive(self) -> bool
fn is_sign_positive(self) -> bool
Returns true if all lanes are positive, false otherwise.
Source§fn to_degrees(self) -> Self
fn to_degrees(self) -> Self
Source§fn to_radians(self) -> Self
fn to_radians(self) -> Self
Source§fn neg_infinity() -> Self
fn neg_infinity() -> Self
Source§fn min_value() -> Self
fn min_value() -> Self
Source§fn min_positive_value() -> Self
fn min_positive_value() -> Self
Source§fn max_value() -> Self
fn max_value() -> Self
Source§fn is_infinite(self) -> bool
fn is_infinite(self) -> bool
true if this value is positive infinity or negative infinity and
false otherwise. Read moreSource§fn ceil(self) -> Self
fn ceil(self) -> Self
Source§fn round(self) -> Self
fn round(self) -> Self
0.0. Read moreSource§fn mul_add(self, a: Self, b: Self) -> Self
fn mul_add(self, a: Self, b: Self) -> Self
(self * a) + b with only one rounding
error, yielding a more accurate result than an unfused multiply-add. Read moreSource§fn log(self, base: Self) -> Self
fn log(self, base: Self) -> Self
Source§fn hypot(self, other: Self) -> Self
fn hypot(self, other: Self) -> Self
x and y. Read moreSource§fn asin(self) -> Self
fn asin(self) -> Self
Source§fn acos(self) -> Self
fn acos(self) -> Self
Source§fn atan(self) -> Self
fn atan(self) -> Self
Source§fn exp_m1(self) -> Self
fn exp_m1(self) -> Self
e^(self) - 1 in a way that is accurate even if the
number is close to zero. Read moreSource§impl<V: FloatVector> FloatCore for NumVector<V>
impl<V: FloatVector> FloatCore for NumVector<V>
Source§fn classify(self) -> FpCategory
fn classify(self) -> FpCategory
Follows the logic of most important classification in the order: NaN (any) > Infinite (any) > Zero (all) > Subnormal (any) > Normal
Source§fn is_sign_negative(self) -> bool
fn is_sign_negative(self) -> bool
Returns true if any lane is negative, false otherwise.
Source§fn is_sign_positive(self) -> bool
fn is_sign_positive(self) -> bool
Returns true if all lanes are positive, false otherwise.
Source§fn recip(self) -> Self
fn recip(self) -> Self
Returns the reciprocal (1/x) of each lane. If you want to use an approximate
reciprocal, check the RealMath trait for that.
Source§fn neg_infinity() -> Self
fn neg_infinity() -> Self
Source§fn min_value() -> Self
fn min_value() -> Self
Source§fn min_positive_value() -> Self
fn min_positive_value() -> Self
Source§fn max_value() -> Self
fn max_value() -> Self
Source§fn to_degrees(self) -> Self
fn to_degrees(self) -> Self
Source§fn to_radians(self) -> Self
fn to_radians(self) -> Self
Source§fn integer_decode(self) -> (u64, i16, i8)
fn integer_decode(self) -> (u64, i16, i8)
sign * mantissa * 2 ^ exponent. Read moreSource§fn is_infinite(self) -> bool
fn is_infinite(self) -> bool
true if the number is infinite. Read moreSource§fn is_normal(self) -> bool
fn is_normal(self) -> bool
true if the number is neither zero, infinite, subnormal or NaN. Read moreSource§fn ceil(self) -> Self
fn ceil(self) -> Self
Source§fn round(self) -> Self
fn round(self) -> Self
0.0. Read moreSource§fn abs(self) -> Self
fn abs(self) -> Self
self. Returns FloatCore::nan() if the
number is FloatCore::nan(). Read moreSource§impl<V> GenericSelectable for NumVector<V>where
V: GenericSelectable + GenericVector,
impl<V> GenericSelectable for NumVector<V>where
V: GenericSelectable + GenericVector,
Source§type SelectableMask = <V as GenericSelectable>::SelectableMask
type SelectableMask = <V as GenericSelectable>::SelectableMask
Self.Source§fn select<M>(mask: M, t: Self, f: Self) -> Selfwhere
Self::SelectableMask: CastMask<M>,
fn select<M>(mask: M, t: Self, f: Self) -> Selfwhere
Self::SelectableMask: CastMask<M>,
t where mask is true, otherwise
from f.Source§impl<V: NumericVector> Mul for NumVector<V>
impl<V: NumericVector> Mul for NumVector<V>
Source§impl<V: FloatVector> MulAdd for NumVector<V>
impl<V: FloatVector> MulAdd for NumVector<V>
Source§impl<V: FloatVector> MulAddAssign for NumVector<V>
impl<V: FloatVector> MulAddAssign for NumVector<V>
Source§fn mul_add_assign(&mut self, a: Self, b: Self)
fn mul_add_assign(&mut self, a: Self, b: Self)
*self = (*self * a) + bSource§impl<V: NumericVector> MulAssign for NumVector<V>
impl<V: NumericVector> MulAssign for NumVector<V>
Source§fn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
*= operation. Read moreSource§impl<V: SignedVector> Neg for NumVector<V>
impl<V: SignedVector> Neg for NumVector<V>
Source§impl<V: NumericVector> Num for NumVector<V>
impl<V: NumericVector> Num for NumVector<V>
type FromStrRadixErr = <<V as GenericVector>::Element as Num>::FromStrRadixErr
Source§fn from_str_radix(str: &str, radix: u32) -> Result<Self, Self::FromStrRadixErr>
fn from_str_radix(str: &str, radix: u32) -> Result<Self, Self::FromStrRadixErr>
2..=36). Read moreSource§impl<V: NumericVector> NumCast for NumVector<V>
impl<V: NumericVector> NumCast for NumVector<V>
Source§impl<V: NumericVector> One for NumVector<V>
impl<V: NumericVector> One for NumVector<V>
Source§impl<V: PartialOrdVector> PartialEq for NumVector<V>
impl<V: PartialOrdVector> PartialEq for NumVector<V>
Source§impl<V: PartialOrdVector> PartialOrd for NumVector<V>
impl<V: PartialOrdVector> PartialOrd for NumVector<V>
Source§fn partial_cmp(&self, other: &Self) -> Option<Ordering>
fn partial_cmp(&self, other: &Self) -> Option<Ordering>
Partial comparison between two vectors, returning None if
the vectors are not fully ordered. Only returns Some(Ordering) if
all lanes are less than, greater than, or equal.
Source§impl<V: NumericVector> Rem for NumVector<V>
impl<V: NumericVector> Rem for NumVector<V>
Source§impl<V: NumericVector> RemAssign for NumVector<V>
impl<V: NumericVector> RemAssign for NumVector<V>
Source§fn rem_assign(&mut self, rhs: Self)
fn rem_assign(&mut self, rhs: Self)
%= operation. Read moreSource§impl<V: BitshiftVector> Shl<NumVector<<V as GenericVector>::Unsigned>> for NumVector<V>
impl<V: BitshiftVector> Shl<NumVector<<V as GenericVector>::Unsigned>> for NumVector<V>
Source§impl<V: BitshiftVector> ShlAssign<NumVector<<V as GenericVector>::Unsigned>> for NumVector<V>
impl<V: BitshiftVector> ShlAssign<NumVector<<V as GenericVector>::Unsigned>> for NumVector<V>
Source§impl<V: BitshiftVector> ShlAssign<u32> for NumVector<V>
impl<V: BitshiftVector> ShlAssign<u32> for NumVector<V>
Source§fn shl_assign(&mut self, rhs: u32)
fn shl_assign(&mut self, rhs: u32)
<<= operation. Read moreSource§impl<V: BitshiftVector> Shr<NumVector<<V as GenericVector>::Unsigned>> for NumVector<V>
impl<V: BitshiftVector> Shr<NumVector<<V as GenericVector>::Unsigned>> for NumVector<V>
Source§impl<V: BitshiftVector> ShrAssign<NumVector<<V as GenericVector>::Unsigned>> for NumVector<V>
impl<V: BitshiftVector> ShrAssign<NumVector<<V as GenericVector>::Unsigned>> for NumVector<V>
Source§impl<V: BitshiftVector> ShrAssign<u32> for NumVector<V>
impl<V: BitshiftVector> ShrAssign<u32> for NumVector<V>
Source§fn shr_assign(&mut self, rhs: u32)
fn shr_assign(&mut self, rhs: u32)
>>= operation. Read moreSource§impl<V: NumericVector> Sub for NumVector<V>
impl<V: NumericVector> Sub for NumVector<V>
Source§impl<V: NumericVector> SubAssign for NumVector<V>
impl<V: NumericVector> SubAssign for NumVector<V>
Source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
-= operation. Read moreSource§impl<V: GenericVector> ToPrimitive for NumVector<V>where
V::Element: ToPrimitive,
Implements conversion from NumVector<V> to primitive types by extracting
the first lane and converting that. Other lanes are ignored.
impl<V: GenericVector> ToPrimitive for NumVector<V>where
V::Element: ToPrimitive,
Implements conversion from NumVector<V> to primitive types by extracting
the first lane and converting that. Other lanes are ignored.
Source§fn to_isize(&self) -> Option<isize>
fn to_isize(&self) -> Option<isize>
self to an isize. If the value cannot be
represented by an isize, then None is returned.Source§fn to_i8(&self) -> Option<i8>
fn to_i8(&self) -> Option<i8>
self to an i8. If the value cannot be
represented by an i8, then None is returned.Source§fn to_i16(&self) -> Option<i16>
fn to_i16(&self) -> Option<i16>
self to an i16. If the value cannot be
represented by an i16, then None is returned.Source§fn to_i32(&self) -> Option<i32>
fn to_i32(&self) -> Option<i32>
self to an i32. If the value cannot be
represented by an i32, then None is returned.Source§fn to_i128(&self) -> Option<i128>
fn to_i128(&self) -> Option<i128>
self to an i128. If the value cannot be
represented by an i128 (i64 under the default implementation), then
None is returned. Read moreSource§fn to_usize(&self) -> Option<usize>
fn to_usize(&self) -> Option<usize>
self to a usize. If the value cannot be
represented by a usize, then None is returned.Source§fn to_u8(&self) -> Option<u8>
fn to_u8(&self) -> Option<u8>
self to a u8. If the value cannot be
represented by a u8, then None is returned.Source§fn to_u16(&self) -> Option<u16>
fn to_u16(&self) -> Option<u16>
self to a u16. If the value cannot be
represented by a u16, then None is returned.Source§fn to_u32(&self) -> Option<u32>
fn to_u32(&self) -> Option<u32>
self to a u32. If the value cannot be
represented by a u32, then None is returned.Source§fn to_u128(&self) -> Option<u128>
fn to_u128(&self) -> Option<u128>
self to a u128. If the value cannot be
represented by a u128 (u64 under the default implementation), then
None is returned. Read moreSource§fn to_f32(&self) -> Option<f32>
fn to_f32(&self) -> Option<f32>
self to an f32. Overflows may map to positive
or negative inifinity, otherwise None is returned if the value cannot
be represented by an f32.Source§fn to_f64(&self) -> Option<f64>
fn to_f64(&self) -> Option<f64>
self to an f64. Overflows may map to positive
or negative inifinity, otherwise None is returned if the value cannot
be represented by an f64. Read moreSource§impl<V: NumericVector> Zero for NumVector<V>
impl<V: NumericVector> Zero for NumVector<V>
Auto Trait Implementations§
impl<V> Freeze for NumVector<V>where
V: Freeze,
impl<V> RefUnwindSafe for NumVector<V>where
V: RefUnwindSafe,
impl<V> Send for NumVector<V>where
V: Send,
impl<V> Sync for NumVector<V>where
V: Sync,
impl<V> Unpin for NumVector<V>where
V: Unpin,
impl<V> UnsafeUnpin for NumVector<V>where
V: UnsafeUnpin,
impl<V> UnwindSafe for NumVector<V>where
V: 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> LowerBounded for Twhere
T: Bounded,
impl<T> LowerBounded for Twhere
T: Bounded,
impl<T> NumAssign for Twhere
T: Num + NumAssignOps,
impl<T, Rhs> NumAssignOps<Rhs> for T
impl<T, Rhs, Output> NumOps<Rhs, Output> for T
Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§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,
self and passes that borrow into the pipe function. Read moreSource§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,
self and passes that borrow into the pipe function. Read moreSource§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
Source§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
Source§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
self, then passes self.as_ref() into the pipe function.Source§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
self, then passes self.as_mut() into the pipe
function.Source§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
self, then passes self.deref() into the pipe function.impl<T> PolyNum for T
impl<T> PolyRational for T
Source§impl<T> Real for Twhere
T: Float,
impl<T> Real for Twhere
T: Float,
Source§fn min_positive_value() -> T
fn min_positive_value() -> T
Source§fn round(self) -> T
fn round(self) -> T
0.0. Read moreSource§fn is_sign_positive(self) -> bool
fn is_sign_positive(self) -> bool
true if self is positive, including +0.0,
Float::infinity(), and with newer versions of Rust f64::NAN. Read moreSource§fn is_sign_negative(self) -> bool
fn is_sign_negative(self) -> bool
true if self is negative, including -0.0,
Float::neg_infinity(), and with newer versions of Rust -f64::NAN. Read moreSource§fn mul_add(self, a: T, b: T) -> T
fn mul_add(self, a: T, b: T) -> T
(self * a) + b with only one rounding
error, yielding a more accurate result than an unfused multiply-add. Read moreSource§fn log(self, base: T) -> T
fn log(self, base: T) -> T
Source§fn to_degrees(self) -> T
fn to_degrees(self) -> T
Source§fn to_radians(self) -> T
fn to_radians(self) -> T
Source§fn hypot(self, other: T) -> T
fn hypot(self, other: T) -> T
x and y. Read moreSource§fn asin(self) -> T
fn asin(self) -> T
Source§fn acos(self) -> T
fn acos(self) -> T
Source§fn atan(self) -> T
fn atan(self) -> T
Source§fn exp_m1(self) -> T
fn exp_m1(self) -> T
e^(self) - 1 in a way that is accurate even if the
number is close to zero. Read moreSource§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§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
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§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
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.