uTL
micro Template library
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
 
template<>
float Max ()
 
template<>
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
 

Detailed Description

template<typename RawType>
class testing::internal::FloatingPoint< RawType >

Definition at line 6687 of file gtest.h.

Member Typedef Documentation

◆ Bits

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

Definition at line 6691 of file gtest.h.

Constructor & Destructor Documentation

◆ FloatingPoint()

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

Definition at line 6735 of file gtest.h.

Member Function Documentation

◆ AlmostEquals()

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

Definition at line 6783 of file gtest.h.

◆ bits()

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

Definition at line 6759 of file gtest.h.

◆ exponent_bits()

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

Definition at line 6762 of file gtest.h.

◆ fraction_bits()

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

Definition at line 6765 of file gtest.h.

◆ Infinity()

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

Definition at line 6749 of file gtest.h.

◆ is_nan()

template<typename RawType>
bool testing::internal::FloatingPoint< RawType >::is_nan ( ) const
inline

Definition at line 6771 of file gtest.h.

◆ Max() [1/3]

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

◆ Max() [2/3]

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

Definition at line 6839 of file gtest.h.

◆ Max() [3/3]

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

Definition at line 6841 of file gtest.h.

◆ ReinterpretBits()

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

Definition at line 6742 of file gtest.h.

◆ sign_bit()

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

Definition at line 6768 of file gtest.h.

Member Data Documentation

◆ kBitCount

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

Definition at line 6696 of file gtest.h.

◆ kExponentBitCount

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

Definition at line 6703 of file gtest.h.

◆ kExponentBitMask

template<typename RawType>
const Bits testing::internal::FloatingPoint< RawType >::kExponentBitMask = ~(kSignBitMask | kFractionBitMask)
static

Definition at line 6713 of file gtest.h.

◆ kFractionBitCount

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

Definition at line 6699 of file gtest.h.

◆ kFractionBitMask

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

Definition at line 6709 of file gtest.h.

◆ kMaxUlps

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

Definition at line 6727 of file gtest.h.

◆ kSignBitMask

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

Definition at line 6706 of file gtest.h.


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