Enum mz_sql::plan::expr::BinaryFunc
source · pub enum BinaryFunc {
Show 189 variants
AddInt16,
AddInt32,
AddInt64,
AddUInt16,
AddUInt32,
AddUInt64,
AddFloat32,
AddFloat64,
AddInterval,
AddTimestampInterval,
AddTimestampTzInterval,
AddDateInterval,
AddDateTime,
AddTimeInterval,
AddNumeric,
AgeTimestamp,
AgeTimestampTz,
BitAndInt16,
BitAndInt32,
BitAndInt64,
BitAndUInt16,
BitAndUInt32,
BitAndUInt64,
BitOrInt16,
BitOrInt32,
BitOrInt64,
BitOrUInt16,
BitOrUInt32,
BitOrUInt64,
BitXorInt16,
BitXorInt32,
BitXorInt64,
BitXorUInt16,
BitXorUInt32,
BitXorUInt64,
BitShiftLeftInt16,
BitShiftLeftInt32,
BitShiftLeftInt64,
BitShiftLeftUInt16,
BitShiftLeftUInt32,
BitShiftLeftUInt64,
BitShiftRightInt16,
BitShiftRightInt32,
BitShiftRightInt64,
BitShiftRightUInt16,
BitShiftRightUInt32,
BitShiftRightUInt64,
SubInt16,
SubInt32,
SubInt64,
SubUInt16,
SubUInt32,
SubUInt64,
SubFloat32,
SubFloat64,
SubInterval,
SubTimestamp,
SubTimestampTz,
SubTimestampInterval,
SubTimestampTzInterval,
SubDate,
SubDateInterval,
SubTime,
SubTimeInterval,
SubNumeric,
MulInt16,
MulInt32,
MulInt64,
MulUInt16,
MulUInt32,
MulUInt64,
MulFloat32,
MulFloat64,
MulNumeric,
MulInterval,
DivInt16,
DivInt32,
DivInt64,
DivUInt16,
DivUInt32,
DivUInt64,
DivFloat32,
DivFloat64,
DivNumeric,
DivInterval,
ModInt16,
ModInt32,
ModInt64,
ModUInt16,
ModUInt32,
ModUInt64,
ModFloat32,
ModFloat64,
ModNumeric,
RoundNumeric,
Eq,
NotEq,
Lt,
Lte,
Gt,
Gte,
LikeEscape,
IsLikeMatch {
case_insensitive: bool,
},
IsRegexpMatch {
case_insensitive: bool,
},
ToCharTimestamp,
ToCharTimestampTz,
DateBinTimestamp,
DateBinTimestampTz,
ExtractInterval,
ExtractTime,
ExtractTimestamp,
ExtractTimestampTz,
ExtractDate,
DatePartInterval,
DatePartTime,
DatePartTimestamp,
DatePartTimestampTz,
DateTruncTimestamp,
DateTruncTimestampTz,
DateTruncInterval,
TimezoneTimestamp,
TimezoneTimestampTz,
TimezoneIntervalTimestamp,
TimezoneIntervalTimestampTz,
TimezoneIntervalTime,
TimezoneOffset,
TextConcat,
JsonbGetInt64 {
stringify: bool,
},
JsonbGetString {
stringify: bool,
},
JsonbGetPath {
stringify: bool,
},
JsonbContainsString,
JsonbConcat,
JsonbContainsJsonb,
JsonbDeleteInt64,
JsonbDeleteString,
MapContainsKey,
MapGetValue,
MapContainsAllKeys,
MapContainsAnyKeys,
MapContainsMap,
ConvertFrom,
Left,
Position,
Right,
RepeatString,
Trim,
TrimLeading,
TrimTrailing,
EncodedBytesCharLength,
ListLengthMax {
max_layer: usize,
},
ArrayContains,
ArrayContainsArray {
rev: bool,
},
ArrayLength,
ArrayLower,
ArrayRemove,
ArrayUpper,
ArrayArrayConcat,
ListListConcat,
ListElementConcat,
ElementListConcat,
ListRemove,
ListContainsList {
rev: bool,
},
DigestString,
DigestBytes,
MzRenderTypmod,
Encode,
Decode,
LogNumeric,
Power,
PowerNumeric,
GetByte,
ConstantTimeEqBytes,
ConstantTimeEqString,
RangeContainsElem {
elem_type: ScalarType,
rev: bool,
},
RangeContainsRange {
rev: bool,
},
RangeOverlaps,
RangeAfter,
RangeBefore,
RangeOverleft,
RangeOverright,
RangeAdjacent,
RangeUnion,
RangeIntersection,
RangeDifference,
UuidGenerateV5,
MzAclItemContainsPrivilege,
ParseIdent,
PrettySql,
RegexpReplace {
regex: Result<(Regex, usize), EvalError>,
},
}
Variants§
AddInt16
AddInt32
AddInt64
AddUInt16
AddUInt32
AddUInt64
AddFloat32
AddFloat64
AddInterval
AddTimestampInterval
AddTimestampTzInterval
AddDateInterval
AddDateTime
AddTimeInterval
AddNumeric
AgeTimestamp
AgeTimestampTz
BitAndInt16
BitAndInt32
BitAndInt64
BitAndUInt16
BitAndUInt32
BitAndUInt64
BitOrInt16
BitOrInt32
BitOrInt64
BitOrUInt16
BitOrUInt32
BitOrUInt64
BitXorInt16
BitXorInt32
BitXorInt64
BitXorUInt16
BitXorUInt32
BitXorUInt64
BitShiftLeftInt16
BitShiftLeftInt32
BitShiftLeftInt64
BitShiftLeftUInt16
BitShiftLeftUInt32
BitShiftLeftUInt64
BitShiftRightInt16
BitShiftRightInt32
BitShiftRightInt64
BitShiftRightUInt16
BitShiftRightUInt32
BitShiftRightUInt64
SubInt16
SubInt32
SubInt64
SubUInt16
SubUInt32
SubUInt64
SubFloat32
SubFloat64
SubInterval
SubTimestamp
SubTimestampTz
SubTimestampInterval
SubTimestampTzInterval
SubDate
SubDateInterval
SubTime
SubTimeInterval
SubNumeric
MulInt16
MulInt32
MulInt64
MulUInt16
MulUInt32
MulUInt64
MulFloat32
MulFloat64
MulNumeric
MulInterval
DivInt16
DivInt32
DivInt64
DivUInt16
DivUInt32
DivUInt64
DivFloat32
DivFloat64
DivNumeric
DivInterval
ModInt16
ModInt32
ModInt64
ModUInt16
ModUInt32
ModUInt64
ModFloat32
ModFloat64
ModNumeric
RoundNumeric
Eq
NotEq
Lt
Lte
Gt
Gte
LikeEscape
IsLikeMatch
IsRegexpMatch
ToCharTimestamp
ToCharTimestampTz
DateBinTimestamp
DateBinTimestampTz
ExtractInterval
ExtractTime
ExtractTimestamp
ExtractTimestampTz
ExtractDate
DatePartInterval
DatePartTime
DatePartTimestamp
DatePartTimestampTz
DateTruncTimestamp
DateTruncTimestampTz
DateTruncInterval
TimezoneTimestamp
TimezoneTimestampTz
TimezoneIntervalTimestamp
TimezoneIntervalTimestampTz
TimezoneIntervalTime
TimezoneOffset
TextConcat
JsonbGetInt64
JsonbGetString
JsonbGetPath
JsonbContainsString
JsonbConcat
JsonbContainsJsonb
JsonbDeleteInt64
JsonbDeleteString
MapContainsKey
MapGetValue
MapContainsAllKeys
MapContainsAnyKeys
MapContainsMap
ConvertFrom
Left
Position
Right
RepeatString
Trim
TrimLeading
TrimTrailing
EncodedBytesCharLength
ListLengthMax
ArrayContains
ArrayContainsArray
ArrayLength
ArrayLower
ArrayRemove
ArrayUpper
ArrayArrayConcat
ListListConcat
ListElementConcat
ElementListConcat
ListRemove
ListContainsList
DigestString
DigestBytes
MzRenderTypmod
Encode
Decode
LogNumeric
Power
PowerNumeric
GetByte
ConstantTimeEqBytes
ConstantTimeEqString
RangeContainsElem
RangeContainsRange
RangeOverlaps
RangeAfter
RangeBefore
RangeOverleft
RangeOverright
RangeAdjacent
RangeUnion
RangeIntersection
RangeDifference
UuidGenerateV5
MzAclItemContainsPrivilege
ParseIdent
PrettySql
RegexpReplace
Implementations§
source§impl BinaryFunc
impl BinaryFunc
pub fn eval<'a>( &'a self, datums: &[Datum<'a>], temp_storage: &'a RowArena, a_expr: &'a MirScalarExpr, b_expr: &'a MirScalarExpr, ) -> Result<Datum<'a>, EvalError>
pub fn output_type( &self, input1_type: ColumnType, input2_type: ColumnType, ) -> ColumnType
sourcepub fn propagates_nulls(&self) -> bool
pub fn propagates_nulls(&self) -> bool
Whether the function output is NULL if any of its inputs are NULL.
sourcepub fn introduces_nulls(&self) -> bool
pub fn introduces_nulls(&self) -> bool
Whether the function might return NULL even if none of its inputs are NULL.
This is presently conservative, and may indicate that a function introduces nulls even when it does not.
pub fn is_infix_op(&self) -> bool
sourcepub fn negate(&self) -> Option<BinaryFunc>
pub fn negate(&self) -> Option<BinaryFunc>
Returns the negation of the given binary function, if it exists.
sourcepub fn could_error(&self) -> bool
pub fn could_error(&self) -> bool
Returns true if the function could introduce an error on non-error inputs.
sourcepub fn is_monotone(&self) -> (bool, bool)
pub fn is_monotone(&self) -> (bool, bool)
Returns true if the function is monotone. (Non-strict; either increasing or decreasing.) Monotone functions map ranges to ranges: ie. given a range of possible inputs, we can determine the range of possible outputs just by mapping the endpoints.
This describes the pointwise behaviour of the function:
ie. the behaviour of any specific argument as the others are held constant. (For example, a - b
is
monotone in the first argument because for any particular value of b
, increasing a
will
always cause the result to increase… and in the second argument because for any specific a
,
increasing b
will always cause the result to decrease.)
This property describes the behaviour of the function over ranges where the function is defined: ie. the arguments and the result are non-error datums.
Trait Implementations§
source§impl Arbitrary for BinaryFunc
impl Arbitrary for BinaryFunc
An explicit Arbitrary
implementation needed here because of a known
proptest
issue.
Revert to the derive-macro impementation once the issue1 is fixed.
§type Parameters = ()
type Parameters = ()
arbitrary_with
accepts for configuration
of the generated Strategy
. Parameters must implement Default
.§type Strategy = Union<BoxedStrategy<BinaryFunc>>
type Strategy = Union<BoxedStrategy<BinaryFunc>>
Strategy
used to generate values of type Self
.source§fn arbitrary_with(
_: <BinaryFunc as Arbitrary>::Parameters,
) -> <BinaryFunc as Arbitrary>::Strategy
fn arbitrary_with( _: <BinaryFunc as Arbitrary>::Parameters, ) -> <BinaryFunc as Arbitrary>::Strategy
source§impl Clone for BinaryFunc
impl Clone for BinaryFunc
source§fn clone(&self) -> BinaryFunc
fn clone(&self) -> BinaryFunc
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for BinaryFunc
impl Debug for BinaryFunc
source§impl<'de> Deserialize<'de> for BinaryFunc
impl<'de> Deserialize<'de> for BinaryFunc
source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<BinaryFunc, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<BinaryFunc, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
source§impl Display for BinaryFunc
impl Display for BinaryFunc
source§impl From<BinaryFunc> for Operation<HirScalarExpr>
impl From<BinaryFunc> for Operation<HirScalarExpr>
source§fn from(b: BinaryFunc) -> Operation<HirScalarExpr>
fn from(b: BinaryFunc) -> Operation<HirScalarExpr>
source§impl Hash for BinaryFunc
impl Hash for BinaryFunc
source§impl MzReflect for BinaryFunc
impl MzReflect for BinaryFunc
source§fn add_to_reflected_type_info(rti: &mut ReflectedTypeInfo)
fn add_to_reflected_type_info(rti: &mut ReflectedTypeInfo)
rti
. Read moresource§impl Ord for BinaryFunc
impl Ord for BinaryFunc
source§fn cmp(&self, other: &BinaryFunc) -> Ordering
fn cmp(&self, other: &BinaryFunc) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl PartialEq for BinaryFunc
impl PartialEq for BinaryFunc
source§impl PartialOrd for BinaryFunc
impl PartialOrd for BinaryFunc
source§impl RustType<ProtoBinaryFunc> for BinaryFunc
impl RustType<ProtoBinaryFunc> for BinaryFunc
source§fn into_proto(&self) -> ProtoBinaryFunc
fn into_proto(&self) -> ProtoBinaryFunc
Self
into a Proto
value.source§fn from_proto(proto: ProtoBinaryFunc) -> Result<BinaryFunc, TryFromProtoError>
fn from_proto(proto: ProtoBinaryFunc) -> Result<BinaryFunc, TryFromProtoError>
source§fn into_proto_owned(self) -> Proto
fn into_proto_owned(self) -> Proto
Self::into_proto
that types can
optionally implement, otherwise, the default implementation
delegates to Self::into_proto
.source§impl Serialize for BinaryFunc
impl Serialize for BinaryFunc
source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Eq for BinaryFunc
impl StructuralPartialEq for BinaryFunc
Auto Trait Implementations§
impl Freeze for BinaryFunc
impl RefUnwindSafe for BinaryFunc
impl Send for BinaryFunc
impl Sync for BinaryFunc
impl Unpin for BinaryFunc
impl UnwindSafe for BinaryFunc
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
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
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
key
and return true
if they are equal.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> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request
source§impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<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.source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> PreferredContainer for T
impl<T> PreferredContainer for T
source§impl<T> ProgressEventTimestamp for T
impl<T> ProgressEventTimestamp for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
RustType::into_proto
.source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
std::ops::AddAssign
, for types that do not implement AddAssign
.source§impl<T> Serialize for T
impl<T> Serialize for T
fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>
source§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.