Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Static Private Member Functions | Private Attributes | List of all members
testing::internal::FloatingPoint< RawType > Class Template Reference

#include <gtest.h>

Classes

union  FloatingPointUnion
 

Public Types

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

Public Member Functions

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

Static Public Member Functions

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

Static Public Attributes

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

Static Private Member Functions

static Bits DistanceBetweenSignAndMagnitudeNumbers (const Bits &sam1, const Bits &sam2)
 
static Bits SignAndMagnitudeToBiased (const Bits &sam)
 

Private Attributes

FloatingPointUnion u_
 

Detailed Description

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

Definition at line 7192 of file gtest.h.

Member Typedef Documentation

◆ Bits

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

Definition at line 7196 of file gtest.h.

Constructor & Destructor Documentation

◆ FloatingPoint()

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

Definition at line 7240 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 7288 of file gtest.h.

◆ bits()

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

Definition at line 7264 of file gtest.h.

◆ DistanceBetweenSignAndMagnitudeNumbers()

template<typename RawType>
static Bits testing::internal::FloatingPoint< RawType >::DistanceBetweenSignAndMagnitudeNumbers ( const Bits sam1,
const Bits sam2 
)
inlinestaticprivate

Definition at line 7331 of file gtest.h.

◆ exponent_bits()

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

Definition at line 7267 of file gtest.h.

◆ fraction_bits()

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

Definition at line 7270 of file gtest.h.

◆ Infinity()

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

Definition at line 7254 of file gtest.h.

◆ is_nan()

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

Definition at line 7276 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 7344 of file gtest.h.

◆ Max() [3/3]

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

Definition at line 7346 of file gtest.h.

◆ ReinterpretBits()

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

Definition at line 7247 of file gtest.h.

◆ sign_bit()

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

Definition at line 7273 of file gtest.h.

◆ SignAndMagnitudeToBiased()

template<typename RawType>
static Bits testing::internal::FloatingPoint< RawType >::SignAndMagnitudeToBiased ( const Bits sam)
inlinestaticprivate

Definition at line 7319 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 7201 of file gtest.h.

◆ kExponentBitCount

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

Definition at line 7208 of file gtest.h.

◆ kExponentBitMask

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

Definition at line 7218 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 7204 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 7214 of file gtest.h.

◆ kMaxUlps

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

Definition at line 7232 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 7211 of file gtest.h.

◆ u_

template<typename RawType>
FloatingPointUnion testing::internal::FloatingPoint< RawType >::u_
private

Definition at line 7338 of file gtest.h.


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


diagnostic_aggregator
Author(s): Kevin Watts, Brice Rebsamen
autogenerated on Mon Feb 28 2022 22:18:07