BloombergLP::bdldfp::DecimalImpUtil_IntelDfp::parse128

parse128 overloads

Synopses

Declared in <bdldfp_decimalimputil_inteldfp.h>

Parse the specified string string as a 128 bit decimal floating- point value and return the result. The parsing is as specified for the strtod128 function in section 9.6 of the ISO/EIC TR 24732 C Decimal Floating-Point Technical Report, except that it is unspecified whether the NaNs returned are quiet or signaling. If string represents a value that absolute value exceeds the maximum value or is less than the smallest value supported by ValueType128 type then store the value of the macro ERANGE into errno and return the value initialized to infinity or zero respectively with the same sign as specified in string. The behavior is undefined unless input represents a valid 128 bit decimal floating-point number in scientific or fixed notation, and no unrelated characters precede (not even whitespace) that textual representation and a terminating null character immediately follows it. Note that this method does not guarantee the behavior of ISO/EIC TR 24732 C when parsing NaN because the AIX compiler intrinsics return a signaling NaN.

static
DecimalImpUtil_IntelDfp::ValueType128
parse128(char const* string);
» more...

Parse the specified string string as a decimal floating-point value and return the result, loading the specified status with a bit mask providing additional status information about the result. The supplied *status must be 0, and may be loaded with a bit mask of k_STATUS_INEXACT, k_STATUS_UNDERFLOW, and k_STATUS_OVERFLOW constants indicating wether the conversion from text inexact, underflowed, or overflowed (or some combination) respectively. The parsing is as specified for the strtod128 function in section 9.6 of the ISO/EIC TR 24732 C Decimal Floating-Point Technical Report, except that it is unspecified whether the NaNs returned are quiet or signaling. The behavior is undefined unless input represents a valid decimal floating-point number in scientific or fixed notation, and no unrelated characters precede (not even whitespace) that textual representation and a terminating null character immediately follows it. The behavior is undefined unless *status is 0. Note that this method does not guarantee the behavior of ISO/EIC TR 24732 C when parsing NaN because the AIX compiler intrinsics return a signaling NaN. Also note that the intel decimal floating point library documents that inexact, underflow, and overflow are the possible floating point exceptions for this operation.

static
DecimalImpUtil_IntelDfp::ValueType128
parse128(
    char const* string,
    unsigned int* status);
» more...