TLFloat 1.15.0
tlfloat_int128_t Struct Reference

#include <tlfloat/tlfloat.h>

Collaboration diagram for tlfloat_int128_t:

Public Member Functions

 tlfloat_int128_t ()
 tlfloat_int128_t (const tlfloat_int128_t_ &v)
 operator tlfloat_int128_t_ () const
 tlfloat_int128_t (const double &d)
 operator double () const
 tlfloat_int128_t (const tlfloat_uint128_t_ &d)
 operator tlfloat_uint128_t_ () const
template<typename T, typename std::enable_if<(std::is_integral< T >::value &&!std::is_unsigned< T >::value &&sizeof(T)<=8), int >::type = 0>
 tlfloat_int128_t (const T &i)
template<typename T, typename std::enable_if<(std::is_integral< T >::value &&std::is_unsigned< T >::value &&sizeof(T)< 8), int >::type = 0>
 tlfloat_int128_t (const T &u)
template<typename T, typename std::enable_if<(std::is_integral< T >::value &&std::is_unsigned< T >::value &&sizeof(T)==8), int >::type = 0>
 tlfloat_int128_t (const T &u)
template<typename T, typename std::enable_if<(std::is_integral< T >::value &&!std::is_unsigned< T >::value &&sizeof(T)<=8), int >::type = 0>
 operator T () const
template<typename T, typename std::enable_if<(std::is_integral< T >::value &&std::is_unsigned< T >::value &&sizeof(T)<=8), int >::type = 0>
 operator T () const
 tlfloat_int128_t (const tlfloat_quad_ &f)
 operator tlfloat_quad_ () const
 tlfloat_int128_t (const tlfloat_octuple_ &f)
 operator tlfloat_octuple_ () const
tlfloat_int128_t operator+ (const tlfloat_int128_t &rhs) const
tlfloat_int128_t operator- (const tlfloat_int128_t &rhs) const
tlfloat_int128_t operator* (const tlfloat_int128_t &rhs) const
tlfloat_int128_t operator/ (const tlfloat_int128_t &rhs) const
tlfloat_int128_t operator% (const tlfloat_int128_t &rhs) const
tlfloat_int128_t operator- () const
tlfloat_int128_t operator+ () const
tlfloat_int128_t operator& (const tlfloat_int128_t &rhs) const
tlfloat_int128_t operator| (const tlfloat_int128_t &rhs) const
tlfloat_int128_t operator^ (const tlfloat_int128_t &rhs) const
tlfloat_int128_t operator~ () const
tlfloat_int128_t operator<< (const int &rhs) const
tlfloat_int128_t operator>> (const int &rhs) const
tlfloat_int128_toperator<<= (int n)
tlfloat_int128_toperator>>= (int n)
bool operator== (const tlfloat_int128_t &rhs) const
bool operator!= (const tlfloat_int128_t &rhs) const
bool operator< (const tlfloat_int128_t &rhs) const
bool operator<= (const tlfloat_int128_t &rhs) const
bool operator> (const tlfloat_int128_t &rhs) const
bool operator>= (const tlfloat_int128_t &rhs) const
tlfloat_int128_toperator++ ()
tlfloat_int128_toperator-- ()
tlfloat_int128_t operator++ (int)
tlfloat_int128_t operator-- (int)

Public Attributes

tlfloat_int128_t_ value

Detailed Description

tlfloat_int128_t is a trivially copyable type for handling 128-bit signed integer in C and C++11. The data size and data structure of this type are the same as ordinary integer types. When compling C code, this type is an alias for tlfloat_int128_t_. When compling C++ code without __int128_t support, this is a struct encapsulating a tlfloat_int128_t variable with operators overloaded.

Constructor & Destructor Documentation

◆ tlfloat_int128_t() [1/9]

tlfloat_int128_t::tlfloat_int128_t ( )
inline

◆ tlfloat_int128_t() [2/9]

tlfloat_int128_t::tlfloat_int128_t ( const tlfloat_int128_t_ & v)
inline

◆ tlfloat_int128_t() [3/9]

tlfloat_int128_t::tlfloat_int128_t ( const double & d)
inlineexplicit

◆ tlfloat_int128_t() [4/9]

tlfloat_int128_t::tlfloat_int128_t ( const tlfloat_uint128_t_ & d)
inlineexplicit

◆ tlfloat_int128_t() [5/9]

template<typename T, typename std::enable_if<(std::is_integral< T >::value &&!std::is_unsigned< T >::value &&sizeof(T)<=8), int >::type = 0>
tlfloat_int128_t::tlfloat_int128_t ( const T & i)
inline

◆ tlfloat_int128_t() [6/9]

template<typename T, typename std::enable_if<(std::is_integral< T >::value &&std::is_unsigned< T >::value &&sizeof(T)< 8), int >::type = 0>
tlfloat_int128_t::tlfloat_int128_t ( const T & u)
inlineexplicit

◆ tlfloat_int128_t() [7/9]

template<typename T, typename std::enable_if<(std::is_integral< T >::value &&std::is_unsigned< T >::value &&sizeof(T)==8), int >::type = 0>
tlfloat_int128_t::tlfloat_int128_t ( const T & u)
inlineexplicit

◆ tlfloat_int128_t() [8/9]

tlfloat_int128_t::tlfloat_int128_t ( const tlfloat_quad_ & f)
inlineexplicit

◆ tlfloat_int128_t() [9/9]

tlfloat_int128_t::tlfloat_int128_t ( const tlfloat_octuple_ & f)
inlineexplicit

Member Function Documentation

◆ operator double()

tlfloat_int128_t::operator double ( ) const
inlineexplicit

◆ operator T() [1/2]

template<typename T, typename std::enable_if<(std::is_integral< T >::value &&std::is_unsigned< T >::value &&sizeof(T)<=8), int >::type = 0>
tlfloat_int128_t::operator T ( ) const
inlineexplicit

◆ operator T() [2/2]

template<typename T, typename std::enable_if<(std::is_integral< T >::value &&!std::is_unsigned< T >::value &&sizeof(T)<=8), int >::type = 0>
tlfloat_int128_t::operator T ( ) const
inlineexplicit

◆ operator tlfloat_int128_t_()

tlfloat_int128_t::operator tlfloat_int128_t_ ( ) const
inline

◆ operator tlfloat_octuple_()

tlfloat_int128_t::operator tlfloat_octuple_ ( ) const
inlineexplicit

◆ operator tlfloat_quad_()

tlfloat_int128_t::operator tlfloat_quad_ ( ) const
inlineexplicit

◆ operator tlfloat_uint128_t_()

tlfloat_int128_t::operator tlfloat_uint128_t_ ( ) const
inlineexplicit

◆ operator!=()

bool tlfloat_int128_t::operator!= ( const tlfloat_int128_t & rhs) const
inline

◆ operator%()

tlfloat_int128_t tlfloat_int128_t::operator% ( const tlfloat_int128_t & rhs) const
inline

◆ operator&()

tlfloat_int128_t tlfloat_int128_t::operator& ( const tlfloat_int128_t & rhs) const
inline

◆ operator*()

tlfloat_int128_t tlfloat_int128_t::operator* ( const tlfloat_int128_t & rhs) const
inline

◆ operator+() [1/2]

tlfloat_int128_t tlfloat_int128_t::operator+ ( ) const
inline

◆ operator+() [2/2]

tlfloat_int128_t tlfloat_int128_t::operator+ ( const tlfloat_int128_t & rhs) const
inline

◆ operator++() [1/2]

tlfloat_int128_t & tlfloat_int128_t::operator++ ( )
inline

◆ operator++() [2/2]

tlfloat_int128_t tlfloat_int128_t::operator++ ( int )
inline

◆ operator-() [1/2]

tlfloat_int128_t tlfloat_int128_t::operator- ( ) const
inline

◆ operator-() [2/2]

tlfloat_int128_t tlfloat_int128_t::operator- ( const tlfloat_int128_t & rhs) const
inline

◆ operator--() [1/2]

tlfloat_int128_t & tlfloat_int128_t::operator-- ( )
inline

◆ operator--() [2/2]

tlfloat_int128_t tlfloat_int128_t::operator-- ( int )
inline

◆ operator/()

tlfloat_int128_t tlfloat_int128_t::operator/ ( const tlfloat_int128_t & rhs) const
inline

◆ operator<()

bool tlfloat_int128_t::operator< ( const tlfloat_int128_t & rhs) const
inline

◆ operator<<()

tlfloat_int128_t tlfloat_int128_t::operator<< ( const int & rhs) const
inline

◆ operator<<=()

tlfloat_int128_t & tlfloat_int128_t::operator<<= ( int n)
inline

◆ operator<=()

bool tlfloat_int128_t::operator<= ( const tlfloat_int128_t & rhs) const
inline

◆ operator==()

bool tlfloat_int128_t::operator== ( const tlfloat_int128_t & rhs) const
inline

◆ operator>()

bool tlfloat_int128_t::operator> ( const tlfloat_int128_t & rhs) const
inline

◆ operator>=()

bool tlfloat_int128_t::operator>= ( const tlfloat_int128_t & rhs) const
inline

◆ operator>>()

tlfloat_int128_t tlfloat_int128_t::operator>> ( const int & rhs) const
inline

◆ operator>>=()

tlfloat_int128_t & tlfloat_int128_t::operator>>= ( int n)
inline

◆ operator^()

tlfloat_int128_t tlfloat_int128_t::operator^ ( const tlfloat_int128_t & rhs) const
inline

◆ operator|()

tlfloat_int128_t tlfloat_int128_t::operator| ( const tlfloat_int128_t & rhs) const
inline

◆ operator~()

tlfloat_int128_t tlfloat_int128_t::operator~ ( ) const
inline

Member Data Documentation

◆ value

tlfloat_int128_t_ tlfloat_int128_t::value

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