FLANG

Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
Fortran::evaluate::value::Real< WORD, PREC > Class Template Reference
Inheritance diagram for Fortran::evaluate::value::Real< WORD, PREC >:

## Public Types
using | Word = WORD
using | Details = common::RealDetails< PREC >
using | Fraction = Integer< binaryPrecision >

## Public Member Functions
constexpr | Real (const Real &)=default
constexpr | Real (const Word &bits)
constexpr Real & | operator= (const Real &)=default
constexpr Real & | operator= (Real &&)=default
constexpr bool | operator== (const Real &that) const
constexpr bool | IsSignBitSet () const
constexpr bool | IsNegative () const
constexpr bool | IsNotANumber () const
constexpr bool | IsQuietNaN () const
constexpr bool | IsSignalingNaN () const
constexpr bool | IsInfinite () const
constexpr bool | IsZero () const
constexpr bool | IsSubnormal () const
constexpr Real | ABS () const
constexpr Real | SetSign (bool toNegative) const
constexpr Real | SIGN (const Real &x) const
constexpr Real | Negate () const
Relation | Compare (const Real &) const
ValueWithRealFlags< Real > | Add (const Real &, Rounding rounding=defaultRounding) const
ValueWithRealFlags< Real > | Subtract (const Real &y, Rounding rounding=defaultRounding) const
ValueWithRealFlags< Real > | Multiply (const Real &, Rounding rounding=defaultRounding) const
ValueWithRealFlags< Real > | Divide (const Real &, Rounding rounding=defaultRounding) const
ValueWithRealFlags< Real > | HYPOT (const Real &, Rounding rounding=defaultRounding) const
template<typename INT >
constexpr INT | EXPONENT () const
constexpr Real | FlushSubnormalToZero () const
ValueWithRealFlags< Real > | ToWholeNumber (common::RoundingMode=common::RoundingMode::ToZero) const
template<typename INT >
constexpr ValueWithRealFlags< INT > | ToInteger (common::RoundingMode mode=common::RoundingMode::ToZero) const
constexpr Word | RawBits () const
constexpr int | Exponent () const
constexpr Fraction | GetFraction () const
constexpr int | UnbiasedExponent () const
std::string | DumpHexadecimal () const
llvm::raw_ostream & | AsFortran (llvm::raw_ostream &, int kind, bool minimal=false) const

## Static Public Member Functions
static constexpr Real | EPSILON ()
static constexpr Real | HUGE ()
static constexpr Real | TINY ()
static constexpr Real | NotANumber ()
static constexpr Real | Infinity (bool negative)
template<typename INT >
static ValueWithRealFlags< Real > | FromInteger (const INT &n, Rounding rounding=defaultRounding)
template<typename A >
static ValueWithRealFlags< Real > | Convert (const A &x, Rounding rounding=defaultRounding)
static ValueWithRealFlags< Real > | Read (const char *&, Rounding rounding=defaultRounding)

## Static Public Attributes
static constexpr int | binaryPrecision {PREC}
static constexpr int | bits {Word::bits}
static constexpr int | DIGITS {binaryPrecision}
static constexpr int | PRECISION {Details::decimalPrecision}
static constexpr int | RANGE {Details::decimalRange}
static constexpr int | MAXEXPONENT {maxExponent - 1 - exponentBias}
static constexpr int | MINEXPONENT {1 - exponentBias}
Static Public Attributes inherited from Fortran::common::RealDetails< PREC >
static constexpr int | binaryPrecision
static constexpr int | bits
static constexpr bool | isImplicitMSB
static constexpr int | significandBits
static constexpr int | exponentBits
static constexpr int | maxExponent
static constexpr int | exponentBias
static constexpr int | decimalPrecision
static constexpr int | decimalRange
static constexpr int | maxDecimalConversionDigits

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

- include/flang/Evaluate/real.h
- lib/Evaluate/real.cpp