Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack > Struct Template Reference

#include <mpfr.hpp>

Public Types

typedef mpl::list< long, long
long > 
signed_types
 
typedef mpl::list< unsigned
long, unsigned long long > 
unsigned_types
 
typedef mpl::list< double,
long double > 
float_types
 
typedef long exponent_type
 

Public Member Functions

 ~mpfr_float_imp () BOOST_NOEXCEPT
 
 mpfr_float_imp ()
 
 mpfr_float_imp (const mpfr_float_imp &o)
 
mpfr_float_impoperator= (const mpfr_float_imp &o)
 
mpfr_float_impoperator= (unsigned long long i)
 
mpfr_float_impoperator= (long long i)
 
mpfr_float_impoperator= (unsigned long i)
 
mpfr_float_impoperator= (long i)
 
mpfr_float_impoperator= (double d)
 
mpfr_float_impoperator= (long double a)
 
mpfr_float_impoperator= (const char *s)
 
void swap (mpfr_float_imp &o) BOOST_NOEXCEPT
 
std::string str (std::streamsize digits, std::ios_base::fmtflags f) const
 
void negate () BOOST_NOEXCEPT
 
template<mpfr_allocation_type AllocationType>
int compare (const mpfr_float_backend< digits10, AllocationType > &o) const BOOST_NOEXCEPT
 
int compare (long i) const BOOST_NOEXCEPT
 
int compare (unsigned long i) const BOOST_NOEXCEPT
 
template<class V >
int compare (V v) const BOOST_NOEXCEPT
 
mpfr_t & data () BOOST_NOEXCEPT
 
const mpfr_t & data () const BOOST_NOEXCEPT
 

Static Public Attributes

static const unsigned digits2 = (digits10 * 1000uL) / 301uL + ((digits10 * 1000uL) % 301 ? 2u : 1u)
 
static const unsigned limb_count = mpfr_custom_get_size(digits2) / sizeof(mp_limb_t)
 

Protected Attributes

mpfr_t m_data
 
mp_limb_t m_buffer [limb_count]
 

Member Typedef Documentation

template<unsigned digits10>
typedef long boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::exponent_type
template<unsigned digits10>
typedef mpl::list<double, long double> boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::float_types
template<unsigned digits10>
typedef mpl::list<long, long long> boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::signed_types
template<unsigned digits10>
typedef mpl::list<unsigned long, unsigned long long> boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::unsigned_types

Constructor & Destructor Documentation

Member Function Documentation

template<unsigned digits10>
template<mpfr_allocation_type AllocationType>
int boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::compare ( const mpfr_float_backend< digits10, AllocationType > &  o) const
inline
template<unsigned digits10>
int boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::compare ( long  i) const
inline
template<unsigned digits10>
int boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::compare ( unsigned long  i) const
inline
template<unsigned digits10>
template<class V >
int boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::compare ( v) const
inline
template<unsigned digits10>
mpfr_t& boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::data ( )
inline
template<unsigned digits10>
const mpfr_t& boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::data ( ) const
inline
template<unsigned digits10>
void boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::negate ( )
inline
template<unsigned digits10>
mpfr_float_imp& boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::operator= ( const mpfr_float_imp< digits10, allocate_stack > &  o)
inline
template<unsigned digits10>
mpfr_float_imp& boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::operator= ( long long  i)
inline
template<unsigned digits10>
mpfr_float_imp& boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::operator= ( unsigned long  i)
inline
template<unsigned digits10>
mpfr_float_imp& boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::operator= ( long  i)
inline
template<unsigned digits10>
mpfr_float_imp& boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::operator= ( double  d)
inline
template<unsigned digits10>
mpfr_float_imp& boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::operator= ( long double  a)
inline
template<unsigned digits10>
mpfr_float_imp& boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::operator= ( const char *  s)
inline
template<unsigned digits10>
std::string boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::str ( std::streamsize  digits,
std::ios_base::fmtflags  f 
) const
inline
template<unsigned digits10>
void boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::swap ( mpfr_float_imp< digits10, allocate_stack > &  o)
inline

Member Data Documentation

template<unsigned digits10>
const unsigned boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::digits2 = (digits10 * 1000uL) / 301uL + ((digits10 * 1000uL) % 301 ? 2u : 1u)
static
template<unsigned digits10>
const unsigned boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::limb_count = mpfr_custom_get_size(digits2) / sizeof(mp_limb_t)
static
template<unsigned digits10>
mp_limb_t boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::m_buffer[limb_count]
protected
template<unsigned digits10>
mpfr_t boost::multiprecision::backends::detail::mpfr_float_imp< digits10, allocate_stack >::m_data
protected

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