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::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false > Struct Template Reference

#include <cpp_int.hpp>

Inheritance diagram for boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >:
Collaboration diagram for boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >:

Public Types

typedef Allocator::template
rebind< limb_type >::other 
allocator_type
 
typedef allocator_type::pointer limb_pointer
 
typedef
allocator_type::const_pointer 
const_limb_pointer
 
typedef mpl::int_< Checked > checked_type
 

Public Member Functions

 BOOST_STATIC_ASSERT (!is_void< Allocator >::value)
 
 BOOST_STATIC_CONSTANT (unsigned, limb_bits=sizeof(limb_type)*CHAR_BIT)
 
 BOOST_STATIC_CONSTANT (limb_type, max_limb_value=~static_cast< limb_type >(0u))
 
 BOOST_STATIC_CONSTANT (limb_type, sign_bit_mask=1u<< (limb_bits-1))
 
 BOOST_STATIC_CONSTANT (unsigned, internal_limb_count=MinBits?MinBits/limb_bits+(MinBits%limb_bits?1:0):sizeof(limb_data)/sizeof(limb_type))
 
 BOOST_STATIC_CONSTANT (bool, variable=true)
 
BOOST_MP_FORCEINLINE
BOOST_CONSTEXPR 
cpp_int_base (limb_type i) BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE
BOOST_CONSTEXPR 
cpp_int_base (signed_limb_type i) BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE
allocator_type
allocator () BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE const
allocator_type
allocator () const BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE unsigned size () const BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE limb_pointer limbs () BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE
const_limb_pointer 
limbs () const BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE unsigned capacity () const BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE bool sign () const BOOST_NOEXCEPT
 
void sign (bool b) BOOST_NOEXCEPT
 
void resize (unsigned new_size, unsigned min_size)
 
BOOST_MP_FORCEINLINE void normalize () BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE
BOOST_CONSTEXPR 
cpp_int_base () BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE cpp_int_base (const cpp_int_base &o)
 
 cpp_int_base (cpp_int_base &&o)
 
cpp_int_baseoperator= (cpp_int_base &&o) BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE ~cpp_int_base () BOOST_NOEXCEPT
 
void assign (const cpp_int_base &o)
 
BOOST_MP_FORCEINLINE void negate () BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE bool isneg () const BOOST_NOEXCEPT
 
BOOST_MP_FORCEINLINE void do_swap (cpp_int_base &o) BOOST_NOEXCEPT
 

Member Typedef Documentation

template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
typedef Allocator::template rebind<limb_type>::other boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::allocator_type
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
typedef mpl::int_<Checked> boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::checked_type
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
typedef allocator_type::const_pointer boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::const_limb_pointer
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
typedef allocator_type::pointer boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::limb_pointer

Constructor & Destructor Documentation

template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE BOOST_CONSTEXPR boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::cpp_int_base ( limb_type  i)
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE BOOST_CONSTEXPR boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::cpp_int_base ( signed_limb_type  i)
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE BOOST_CONSTEXPR boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::cpp_int_base ( )
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::cpp_int_base ( const cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false > &  o)
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::cpp_int_base ( cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false > &&  o)
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::~cpp_int_base ( )
inline

Member Function Documentation

template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE allocator_type& boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::allocator ( )
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE const allocator_type& boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::allocator ( ) const
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
void boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::assign ( const cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false > &  o)
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::BOOST_STATIC_ASSERT ( !is_void< Allocator >::value  )
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::BOOST_STATIC_CONSTANT ( unsigned  ,
limb_bits  = sizeof(limb_type)*CHAR_BIT 
)
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::BOOST_STATIC_CONSTANT ( limb_type  ,
max_limb_value  = ~static_cast< limb_type >(0u) 
)
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::BOOST_STATIC_CONSTANT ( limb_type  ,
sign_bit_mask  = 1u<< (limb_bits-1) 
)
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::BOOST_STATIC_CONSTANT ( unsigned  ,
internal_limb_count  = MinBits?MinBits/limb_bits+(MinBits%limb_bits?1:0):sizeof(limb_data)/sizeof(limb_type) 
)
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::BOOST_STATIC_CONSTANT ( bool  ,
variable  = true 
)
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE unsigned boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::capacity ( ) const
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE void boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::do_swap ( cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false > &  o)
inline

References boost::swap.

template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE bool boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::isneg ( ) const
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE limb_pointer boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::limbs ( )
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE const_limb_pointer boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::limbs ( ) const
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE void boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::negate ( )
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE void boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::normalize ( )
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
cpp_int_base& boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::operator= ( cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false > &&  o)
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
void boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::resize ( unsigned  new_size,
unsigned  min_size 
)
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE bool boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::sign ( ) const
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
void boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::sign ( bool  b)
inline
template<unsigned MinBits, unsigned MaxBits, cpp_int_check_type Checked, class Allocator >
BOOST_MP_FORCEINLINE unsigned boost::multiprecision::backends::cpp_int_base< MinBits, MaxBits, signed_magnitude, Checked, Allocator, false >::size ( void  ) const
inline

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