Right shift operators
Synopses
Declared in <bdldfp_decimal.h>
Return an Uint128 value equal to the value of a bitwise right shift of the specified lhs 128‐bit integer shifted by the specified rhs value. The behavior is undefined unless 0 <= rhs < 128.
bdldfp::Uint128
operator>>(
Uint128 lhs,
int rhs);
Read, into the specified object, from the specified input stream an IEEE 128 bit decimal floating‐point value as described in the IEEE‐754 2008 standard (5.12 Details of conversions between floating point numbers and external character sequences) and return a reference providing modifiable access to stream. If stream contains a Nan value, it is unspecified if object will receive a quiet or signaling Nan. If stream is not valid on entry stream.good() == false, this operation has no effect other than setting stream.fail() to true. If eof (end‐of‐file) is found before any non‐whitespace characters stream.fail() is set to true and object remains unchanged. If eof is detected after some characters have been read (and successfully interpreted as part of the textual representation of a floating‐point value as specified by IEEE‐754) then stream.eof() is set to true. If the first non‐whitespace character sequence is not a valid textual representation of a floating‐point value (e.g., 12e or e12 or 1*2) the stream.fail() is set to true and object will remain unchanged. If a real number value is represented by the character sequence but it is a large positive or negative value that cannot be stored into object then store the value of the macro ERANGE into errno and positive or negative infinity is stored into object, respectively. If a real number value is represented by the character sequence but it is a small positive or negative value that cannot be stored into object then store the value of the macro ERANGE into errno and positive or negative zero is stored into object, respectively. If a real number value is represented by the character sequence but it cannot be stored exactly into object, the value is rounded according to the current rounding direction (of the environment) and then stored into object.
template<
class CHARTYPE,
class TRAITS>
bsl::basic_istream<CHARTYPE, TRAITS>&
operator>>(
bsl::basic_istream<CHARTYPE, TRAITS>& stream,
Decimal128& object);
Read, into the specified object, from the specified input stream an IEEE 32 bit decimal floating‐point value as described in the IEEE‐754 2008 standard (5.12 Details of conversions between floating point numbers and external character sequences) and return a reference providing modifiable access to stream. If stream contains a NaN value, it is unspecified if object will receive a quiet or signaling Nan. If stream is not valid on entry stream.good() == false, this operation has no effect other than setting stream.fail() to true. If eof (end‐of‐file) is found before any non‐whitespace characters stream.fail() is set to true and object remains unchanged. If eof is detected after some characters have been read (and successfully interpreted as part of the textual representation of a floating‐point value as specified by IEEE‐754) then stream.eof() is set to true. If the first non‐whitespace character sequence is not a valid textual representation of a floating‐point value (e.g., 12e or e12 or 1*2) the stream.fail() is set to true and object will remain unchanged. If a real number value is represented by the character sequence but it is a large positive or negative value that cannot be stored into object then store the value of the macro ERANGE into errno and positive or negative infinity is stored into object, respectively. If a real number value is represented by the character sequence but it is a small positive or negative value that cannot be stored into object then store the value of the macro ERANGE into errno and positive or negative zero is stored into object, respectively. If a real number value is represented by the character sequence but it cannot be stored exactly into object, the value is rounded according to the current rounding direction (of the environment) and then stored into object.
template<
class CHARTYPE,
class TRAITS>
bsl::basic_istream<CHARTYPE, TRAITS>&
operator>>(
bsl::basic_istream<CHARTYPE, TRAITS>& stream,
Decimal32& object);
Read, into the specified object, from the specified input stream an IEEE 64 bit decimal floating‐point value as described in the IEEE‐754 2008 standard (5.12 Details of conversions between floating point numbers and external character sequences) and return a reference providing modifiable access to stream. If stream contains a Nan value, it is unspecified if object will receive a quiet or signaling Nan. If stream is not valid on entry stream.good() == false, this operation has no effect other than setting stream.fail() to true. If eof (end‐of‐file) is found before any non‐whitespace characters stream.fail() is set to true and object remains unchanged. If eof is detected after some characters have been read (and successfully interpreted as part of the textual representation of a floating‐point value as specified by IEEE‐754) then stream.eof() is set to true. If the first non‐whitespace character sequence is not a valid textual representation of a floating‐point value (e.g., 12e or e12 or 1*2) the stream.fail() is set to true and object will remain unchanged. If a real number value is represented by the character sequence but it is a large positive or negative value that cannot be stored into object then store the value of the macro ERANGE into errno and positive or negative infinity is stored into object, respectively. If a real number value is represented by the character sequence but it is a small positive or negative value that cannot be stored into object then store the value of the macro ERANGE into errno and positive or negative zero is stored into object, respectively. If a real number value is represented by the character sequence but it cannot be stored exactly into object, the value is rounded according to the current rounding direction (of the environment) and then stored into object.
template<
class CHARTYPE,
class TRAITS>
bsl::basic_istream<CHARTYPE, TRAITS>&
operator>>(
bsl::basic_istream<CHARTYPE, TRAITS>& stream,
Decimal64& object);
Created with MrDocs