testing::internal::FloatingPoint< RawType > Class Template Reference

#include <gtest.h>

Public Types

typedef TypeWithSize< sizeof(RawType)>::UInt Bits
 

Public Member Functions

 FloatingPoint (const RawType &x)
 
const Bitsbits () const
 
Bits exponent_bits () const
 
Bits fraction_bits () const
 
Bits sign_bit () const
 
bool is_nan () const
 
bool AlmostEquals (const FloatingPoint &rhs) const
 
float Max ()
 
double Max ()
 

Static Public Member Functions

static RawType ReinterpretBits (const Bits bits)
 
static RawType Infinity ()
 
static RawType Max ()
 

Static Public Attributes

static const size_t kBitCount = 8*sizeof(RawType)
 
static const size_t kFractionBitCount
 
static const size_t kExponentBitCount = kBitCount - 1 - kFractionBitCount
 
static const Bits kSignBitMask = static_cast<Bits>(1) << (kBitCount - 1)
 
static const Bits kFractionBitMask
 
static const Bits kExponentBitMask = ~(kSignBitMask | kFractionBitMask)
 
static const size_t kMaxUlps = 4
 

Member Typedef Documentation

◆ Bits

template<typename RawType >
typedef TypeWithSize<sizeof(RawType)>::UInt testing::internal::FloatingPoint< RawType >::Bits

Constructor & Destructor Documentation

◆ FloatingPoint()

template<typename RawType >
testing::internal::FloatingPoint< RawType >::FloatingPoint ( const RawType &  x)
inlineexplicit

References exprtk::details::x().

Member Function Documentation

◆ AlmostEquals()

template<typename RawType >
bool testing::internal::FloatingPoint< RawType >::AlmostEquals ( const FloatingPoint< RawType > &  rhs) const
inline

◆ bits()

template<typename RawType >
const Bits & testing::internal::FloatingPoint< RawType >::bits ( ) const
inline

◆ exponent_bits()

template<typename RawType >
Bits testing::internal::FloatingPoint< RawType >::exponent_bits ( ) const
inline

◆ fraction_bits()

template<typename RawType >
Bits testing::internal::FloatingPoint< RawType >::fraction_bits ( ) const
inline

◆ Infinity()

◆ is_nan()

◆ Max() [1/3]

template<typename RawType >
static RawType testing::internal::FloatingPoint< RawType >::Max ( )
static

◆ Max() [2/3]

float testing::internal::FloatingPoint< float >::Max ( )
inline

◆ Max() [3/3]

double testing::internal::FloatingPoint< double >::Max ( )
inline

◆ ReinterpretBits()

template<typename RawType >
static RawType testing::internal::FloatingPoint< RawType >::ReinterpretBits ( const Bits  bits)
inlinestatic

◆ sign_bit()

template<typename RawType >
Bits testing::internal::FloatingPoint< RawType >::sign_bit ( ) const
inline

Member Data Documentation

◆ kBitCount

template<typename RawType >
const size_t testing::internal::FloatingPoint< RawType >::kBitCount = 8*sizeof(RawType)
static

◆ kExponentBitCount

template<typename RawType >
const size_t testing::internal::FloatingPoint< RawType >::kExponentBitCount = kBitCount - 1 - kFractionBitCount
static

◆ kExponentBitMask

◆ kFractionBitCount

template<typename RawType >
const size_t testing::internal::FloatingPoint< RawType >::kFractionBitCount
static
Initial value:
=
std::numeric_limits<RawType>::digits - 1

◆ kFractionBitMask

template<typename RawType >
const Bits testing::internal::FloatingPoint< RawType >::kFractionBitMask
static
Initial value:
=
~static_cast<Bits>(0) >> (kExponentBitCount + 1)
static const size_t kExponentBitCount
Definition: gtest.h:6614

Referenced by testing::internal::FloatingPoint< RawType >::fraction_bits().

◆ kMaxUlps

template<typename RawType >
const size_t testing::internal::FloatingPoint< RawType >::kMaxUlps = 4
static

◆ kSignBitMask

template<typename RawType >
const Bits testing::internal::FloatingPoint< RawType >::kSignBitMask = static_cast<Bits>(1) << (kBitCount - 1)
static

The documentation for this class was generated from the following file: