fn mul_helper_single_zero_inclusive(
dt: &DataType,
lhs: &Interval,
rhs: &Interval,
zero: ScalarValue,
) -> IntervalExpand description
Multiplies two intervals when only left-hand side interval contains zero.
This function takes in two intervals (lhs and rhs) as arguments and
returns their product (whose data type is known to be dt). This function
serves as a subroutine that handles the specific case when only lhs contains
zero within its range. The interval not containing zero, i.e. rhs, can lie
on either side of zero. Returns an error if the multiplication of bounds fails.
Left-hand side: <-------=====0=====------->
Right-hand side: <--======----0------------>
or
Left-hand side: <-------=====0=====------->
Right-hand side: <------------0--======---->Caution: This function contains multiple calls to unwrap(). Therefore,
it should be used with caution. Currently, it is used in contexts where the
DataType (dt) is validated prior to calling this function.