Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Static Public Member Functions | Static Public Attributes | List of all members
uni20::numeric_limits< mpreal > Struct Reference

Type properties and explicit runtime limits for exact-or-approximate reals. More...

#include <mpreal.hpp>

Static Public Member Functions

static mpfr_prec_t digits (mpreal const &x)
 
static mpfr_prec_t digits (Precision p)
 Significand bits at a finite working precision.
 
static mpreal epsilon ()=delete
 
static mpreal epsilon (mpreal const &x)
 
static mpreal epsilon (Precision p)
 Spacing above one at a finite working precision.
 

Static Public Attributes

static constexpr bool has_infinity = true
 
static constexpr bool has_quiet_NaN = true
 
static constexpr bool is_bounded = false
 
static constexpr bool is_exact = false
 
static constexpr bool is_iec559 = false
 
static constexpr bool is_integer = false
 
static constexpr bool is_signed = true
 
static constexpr bool is_specialized = true
 
static constexpr int radix = 2
 

Detailed Description

Type properties and explicit runtime limits for exact-or-approximate reals.

Precision-dependent queries require a finite Precision or an approximate exemplar. There is no type-wide epsilon or digit count. Unimplemented limits are intentionally absent, rather than inheriting the zero-valued defaults of an unspecialized std::numeric_limits.

Member Function Documentation

◆ digits() [1/2]

static mpfr_prec_t uni20::numeric_limits< mpreal >::digits ( mpreal const &  x)
inlinestatic

◆ digits() [2/2]

static mpfr_prec_t uni20::numeric_limits< mpreal >::digits ( Precision  p)
inlinestatic

Significand bits at a finite working precision.

◆ epsilon() [1/3]

static mpreal uni20::numeric_limits< mpreal >::epsilon ( )
staticdelete

◆ epsilon() [2/3]

static mpreal uni20::numeric_limits< mpreal >::epsilon ( mpreal const &  x)
inlinestatic

◆ epsilon() [3/3]

mpreal uni20::numeric_limits< mpreal >::epsilon ( Precision  p)
inlinestatic

Spacing above one at a finite working precision.

Exceptions
std::logic_errorIf the precision is exact or the exemplar is unset.

Member Data Documentation

◆ has_infinity

constexpr bool uni20::numeric_limits< mpreal >::has_infinity = true
staticconstexpr

◆ has_quiet_NaN

constexpr bool uni20::numeric_limits< mpreal >::has_quiet_NaN = true
staticconstexpr

◆ is_bounded

constexpr bool uni20::numeric_limits< mpreal >::is_bounded = false
staticconstexpr

◆ is_exact

constexpr bool uni20::numeric_limits< mpreal >::is_exact = false
staticconstexpr

◆ is_iec559

constexpr bool uni20::numeric_limits< mpreal >::is_iec559 = false
staticconstexpr

◆ is_integer

constexpr bool uni20::numeric_limits< mpreal >::is_integer = false
staticconstexpr

◆ is_signed

constexpr bool uni20::numeric_limits< mpreal >::is_signed = true
staticconstexpr

◆ is_specialized

constexpr bool uni20::numeric_limits< mpreal >::is_specialized = true
staticconstexpr

◆ radix

constexpr int uni20::numeric_limits< mpreal >::radix = 2
staticconstexpr

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