flexiblesusy is hosted by Hepforge, IPPP Durham
FlexibleSUSY
nlohmann::json_abi_v3_11_3::detail::dtoa_impl::diyfp Struct Reference

#include <json.hpp>

Collaboration diagram for nlohmann::json_abi_v3_11_3::detail::dtoa_impl::diyfp:
Collaboration graph

Public Member Functions

constexpr diyfp (std::uint64_t f_, int e_) noexcept
 

Static Public Member Functions

static diyfp mul (const diyfp &x, const diyfp &y) noexcept
 returns x * y More...
 
static diyfp normalize (diyfp x) noexcept
 normalize x such that the significand is >= 2^(q-1) More...
 
static diyfp normalize_to (const diyfp &x, const int target_exponent) noexcept
 normalize x such that the result has the exponent E More...
 
static diyfp sub (const diyfp &x, const diyfp &y) noexcept
 returns x - y More...
 

Public Attributes

int e = 0
 
std::uint64_t f = 0
 

Static Public Attributes

static constexpr int kPrecision = 64
 

Detailed Description

Definition at line 16964 of file json.hpp.

Constructor & Destructor Documentation

◆ diyfp()

constexpr nlohmann::json_abi_v3_11_3::detail::dtoa_impl::diyfp::diyfp ( std::uint64_t  f_,
int  e_ 
)
inlineconstexprnoexcept

Definition at line 16971 of file json.hpp.

Member Function Documentation

◆ mul()

static diyfp nlohmann::json_abi_v3_11_3::detail::dtoa_impl::diyfp::mul ( const diyfp x,
const diyfp y 
)
inlinestaticnoexcept

returns x * y

Note
The result is rounded. (Only the upper q bits are returned.)

Definition at line 16989 of file json.hpp.

References f, and Q.

◆ normalize()

static diyfp nlohmann::json_abi_v3_11_3::detail::dtoa_impl::diyfp::normalize ( diyfp  x)
inlinestaticnoexcept

normalize x such that the significand is >= 2^(q-1)

Precondition
x.f != 0

Definition at line 17054 of file json.hpp.

References JSON_ASSERT.

◆ normalize_to()

static diyfp nlohmann::json_abi_v3_11_3::detail::dtoa_impl::diyfp::normalize_to ( const diyfp x,
const int  target_exponent 
)
inlinestaticnoexcept

normalize x such that the result has the exponent E

Precondition
e >= x.e and the upper e - x.e bits of x.f must be zero.

Definition at line 17071 of file json.hpp.

References e, and JSON_ASSERT.

◆ sub()

static diyfp nlohmann::json_abi_v3_11_3::detail::dtoa_impl::diyfp::sub ( const diyfp x,
const diyfp y 
)
inlinestaticnoexcept

returns x - y

Precondition
x.e == y.e and x.f >= y.f

Definition at line 16977 of file json.hpp.

References JSON_ASSERT.

Member Data Documentation

◆ e

◆ f

◆ kPrecision

constexpr int nlohmann::json_abi_v3_11_3::detail::dtoa_impl::diyfp::kPrecision = 64
staticconstexpr

Definition at line 16966 of file json.hpp.


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