#include <ieee.h>
Public Member Functions | |
| Double () | |
| Double (double d) | |
| Double (uint64_t d64) | |
| Double (DiyFp diy_fp) | |
| DiyFp | AsDiyFp () const |
| DiyFp | AsNormalizedDiyFp () const |
| uint64_t | AsUint64 () const |
| double | NextDouble () const |
| double | PreviousDouble () const |
| int | Exponent () const |
| uint64_t | Significand () const |
| bool | IsDenormal () const |
| bool | IsSpecial () const |
| bool | IsNan () const |
| bool | IsInfinite () const |
| int | Sign () const |
| DiyFp | UpperBoundary () const |
| void | NormalizedBoundaries (DiyFp *out_m_minus, DiyFp *out_m_plus) const |
| bool | LowerBoundaryIsCloser () const |
| double | value () const |
Static Public Member Functions | |
| static int | SignificandSizeForOrderOfMagnitude (int order) |
| static double | Infinity () |
| static double | NaN () |
Static Public Attributes | |
| static const uint64_t | kSignMask = UINT64_2PART_C(0x80000000, 00000000) |
| static const uint64_t | kExponentMask = UINT64_2PART_C(0x7FF00000, 00000000) |
| static const uint64_t | kSignificandMask = UINT64_2PART_C(0x000FFFFF, FFFFFFFF) |
| static const uint64_t | kHiddenBit = UINT64_2PART_C(0x00100000, 00000000) |
| static const int | kPhysicalSignificandSize = 52 |
| static const int | kSignificandSize = 53 |
Definition at line 42 of file ieee.h.
| double_conversion::Double::Double | ( | ) | [inline] |
Definition at line 51 of file ieee.h.
Referenced by Infinity(), NaN(), NextDouble(), and PreviousDouble().

| double_conversion::Double::Double | ( | double | d | ) | [inline, explicit] |
| double_conversion::Double::Double | ( | uint64_t | d64 | ) | [inline, explicit] |
| double_conversion::Double::Double | ( | DiyFp | diy_fp | ) | [inline, explicit] |
| DiyFp double_conversion::Double::AsDiyFp | ( | ) | const [inline] |
Definition at line 59 of file ieee.h.
References ASSERT, Exponent(), IsSpecial(), Sign(), and Significand().
Referenced by NormalizedBoundaries().


| DiyFp double_conversion::Double::AsNormalizedDiyFp | ( | ) | const [inline] |
Definition at line 66 of file ieee.h.
References ASSERT, Exponent(), kHiddenBit, kSignificandSize, double_conversion::DiyFp::kSignificandSize, Significand(), and value().

| uint64_t double_conversion::Double::AsUint64 | ( | ) | const [inline] |
Definition at line 83 of file ieee.h.
Referenced by Exponent(), IsDenormal(), IsInfinite(), IsNan(), IsSpecial(), LowerBoundaryIsCloser(), Sign(), and Significand().

| int double_conversion::Double::Exponent | ( | ) | const [inline] |
Definition at line 111 of file ieee.h.
References AsUint64(), IsDenormal(), kExponentMask, and kPhysicalSignificandSize.
Referenced by AsDiyFp(), AsNormalizedDiyFp(), LowerBoundaryIsCloser(), and UpperBoundary().


| static double double_conversion::Double::Infinity | ( | ) | [inline, static] |
Definition at line 216 of file ieee.h.
References Double().
Referenced by PreviousDouble().


| bool double_conversion::Double::IsDenormal | ( | ) | const [inline] |
Definition at line 131 of file ieee.h.
References AsUint64(), and kExponentMask.
Referenced by Exponent(), and Significand().


| bool double_conversion::Double::IsInfinite | ( | ) | const [inline] |
Definition at line 149 of file ieee.h.
References AsUint64(), kExponentMask, and kSignificandMask.

| bool double_conversion::Double::IsNan | ( | ) | const [inline] |
Definition at line 143 of file ieee.h.
References AsUint64(), kExponentMask, and kSignificandMask.

| bool double_conversion::Double::IsSpecial | ( | ) | const [inline] |
Definition at line 138 of file ieee.h.
References AsUint64(), and kExponentMask.
Referenced by AsDiyFp().


| bool double_conversion::Double::LowerBoundaryIsCloser | ( | ) | const [inline] |
Definition at line 187 of file ieee.h.
References AsUint64(), Exponent(), and kSignificandMask.
Referenced by NormalizedBoundaries().


| static double double_conversion::Double::NaN | ( | ) | [inline, static] |
| double double_conversion::Double::NextDouble | ( | ) | const [inline] |
Definition at line 88 of file ieee.h.
References Double(), Sign(), and Significand().

| void double_conversion::Double::NormalizedBoundaries | ( | DiyFp * | out_m_minus, | |
| DiyFp * | out_m_plus | |||
| ) | const [inline] |
Definition at line 171 of file ieee.h.
References AsDiyFp(), ASSERT, double_conversion::DiyFp::e(), double_conversion::DiyFp::f(), LowerBoundaryIsCloser(), double_conversion::DiyFp::Normalize(), double_conversion::DiyFp::set_e(), double_conversion::DiyFp::set_f(), and value().

| double double_conversion::Double::PreviousDouble | ( | ) | const [inline] |
Definition at line 101 of file ieee.h.
References Double(), Infinity(), kSignMask, Sign(), and Significand().

| int double_conversion::Double::Sign | ( | ) | const [inline] |
Definition at line 155 of file ieee.h.
References AsUint64(), and kSignMask.
Referenced by AsDiyFp(), NextDouble(), PreviousDouble(), and UpperBoundary().


| uint64_t double_conversion::Double::Significand | ( | ) | const [inline] |
Definition at line 120 of file ieee.h.
References AsUint64(), IsDenormal(), kHiddenBit, and kSignificandMask.
Referenced by AsDiyFp(), AsNormalizedDiyFp(), NextDouble(), PreviousDouble(), and UpperBoundary().


| static int double_conversion::Double::SignificandSizeForOrderOfMagnitude | ( | int | order | ) | [inline, static] |
| DiyFp double_conversion::Double::UpperBoundary | ( | ) | const [inline] |
Definition at line 162 of file ieee.h.
References ASSERT, Exponent(), Sign(), and Significand().

| double double_conversion::Double::value | ( | ) | const [inline] |
Definition at line 200 of file ieee.h.
Referenced by AsNormalizedDiyFp(), and NormalizedBoundaries().

const uint64_t double_conversion::Double::kExponentMask = UINT64_2PART_C(0x7FF00000, 00000000) [static] |
Definition at line 45 of file ieee.h.
Referenced by Exponent(), IsDenormal(), IsInfinite(), IsNan(), and IsSpecial().
const uint64_t double_conversion::Double::kHiddenBit = UINT64_2PART_C(0x00100000, 00000000) [static] |
const int double_conversion::Double::kPhysicalSignificandSize = 52 [static] |
const uint64_t double_conversion::Double::kSignificandMask = UINT64_2PART_C(0x000FFFFF, FFFFFFFF) [static] |
Definition at line 46 of file ieee.h.
Referenced by IsInfinite(), IsNan(), LowerBoundaryIsCloser(), and Significand().
const int double_conversion::Double::kSignificandSize = 53 [static] |
Definition at line 49 of file ieee.h.
Referenced by AsNormalizedDiyFp(), and SignificandSizeForOrderOfMagnitude().
const uint64_t double_conversion::Double::kSignMask = UINT64_2PART_C(0x80000000, 00000000) [static] |
1.5.9