BloombergLP::bdldfp::operator*

Multiply the specified lhs by the value of the specified rhs as described by IEEE-754, and return the result.

Synopsis

Declared in <bdldfp_decimal.h>

bdldfp::Decimal128
operator*(
    int lhs,
    Decimal128 rhs);

Description

* If rhs is signaling NaN, then store the value of the macro EDOM into errno and return a NaN. * Otherwise if rhs is NaN, then return a NaN. * Otherwise if rhs is infinity (positive or negative), and lhs is zero, then store the value of the macro EDOM into'errno' and return a NaN. * Otherwise if rhs is infinity (positive or negative), then return rhs. * Otherwise if lhs is zero, then return zero with the sign of rhs. * Otherwise if the product of lhs and the value of rhs results in an absolute value that is larger than std::numeric_limits<Decimal128>::max() then store the value of the macro ERANGE into errno and return infinity with the same sign as that result. * Otherwise if the product of lhs and the value of rhs results in an absolute value that is smaller than std::numeric_limits<Decimal128>::min() then store the value of the macro ERANGE into errno and return zero with the same sign as that result. * Otherwise return the product of the value of lhs and value rhs.