50 inline int128 () noexcept : lo(0), hi(0) {};
51 inline int128 (
const int128 & a) noexcept : lo (a.lo), hi (a.hi) {};
54 inline int128 (
const unsigned int & a) noexcept : lo (a), hi (0ll) {};
55 inline int128 (
const signed int & a) noexcept : lo (a), hi (0ll) {
56 if (a < 0) this->hi = -1ll;
59 inline int128 (
const int64u & a) noexcept : lo (a), hi (0ll) {};
60 inline int128 (
const int64s & a) noexcept : lo (a), hi (0ll) {
61 if (a < 0) this->hi = -1ll;
66 int128 (
const long double & a)
noexcept;
75 int128 (
const int64u & a,
const int64s & b) noexcept
93 int128 & operator >>= (
unsigned int n) noexcept;
94 int128 & operator <<= (
unsigned int n) noexcept;
101 inline const
int128 & operator + () const noexcept {
return *
this; };
105 return *
this += (-b);
109 *
this = this->
div (b, dummy);
113 this->
div (b, *
this);
118 int toInt () const noexcept {
return (
int) this->lo; };
119 int64s
toInt64 () const noexcept {
return (int64s) this->lo; };
121 const char *
toString (
unsigned int radix = 10) const noexcept;
130 bool bit (
unsigned int n) const noexcept;
131 void bit (
unsigned int n,
bool val) noexcept;
133#if defined(__GNUC__) && !defined(__ANDROID_API__)
134 __attribute__ ((__aligned__ (16), __packed__))
160 return int128 (a) >>= n; }
162 return int128 (a) <<= n; }
int128(const char *sz) noexcept
int128 & operator/=(const int128 &b) noexcept
Definition int128s.h:107
int128 & operator-=(const int128 &b) noexcept
Definition int128s.h:104
const int128 & operator+() const noexcept
Definition int128s.h:101
int128(const float a) noexcept
int128 & operator%=(const int128 &b) noexcept
Definition int128s.h:112
const char * toString(unsigned int radix=10) const noexcept
int128(const double &a) noexcept
int128 div(const int128 &, int128 &) const noexcept
int128(const signed int &a) noexcept
Definition int128s.h:55
friend bool operator==(const int128 &, const int128 &) noexcept
double toDouble() const noexcept
int128() noexcept
Definition int128s.h:50
float toFloat() const noexcept
bool operator!() const noexcept
int128(const int64u &a) noexcept
Definition int128s.h:59
int64s toInt64() const noexcept
Definition int128s.h:119
int128(const int64s &a) noexcept
Definition int128s.h:60
friend bool operator&&(const int128 &, const int128 &) noexcept
bool bit(unsigned int n) const noexcept
long double toLongDouble() const noexcept
int128 operator-() const noexcept
int128(const long double &a) noexcept
int128 & operator=(const int128 &) noexcept=default
int toInt() const noexcept
Definition int128s.h:118
friend bool operator||(const int128 &, const int128 &) noexcept
int128(const unsigned int &a) noexcept
Definition int128s.h:54
int128(const int128 &a) noexcept
Definition int128s.h:51
friend bool operator<(const int128 &, const int128 &) noexcept
Definition BitStream.h:24
bool operator>=(const int128 &a, const int128 &b) noexcept
Definition int128s.h:175
int128 operator|(const int128 &a, const int128 &b) noexcept
Definition int128s.h:166
int128 operator%(const int128 &a, const int128 &b) noexcept
Definition int128s.h:156
bool operator<=(const int128 &a, const int128 &b) noexcept
Definition int128s.h:173
int128 operator/(const int128 &a, const int128 &b) noexcept
Definition int128s.h:154
int128 operator>>(const int128 &a, unsigned int n) noexcept
Definition int128s.h:159
int128 operator<<(const int128 &a, unsigned int n) noexcept
Definition int128s.h:161
bool operator>(const int128 &a, const int128 &b) noexcept
Definition int128s.h:171
int128 operator&(const int128 &a, const int128 &b) noexcept
Definition int128s.h:164
int128 int128s
Definition int128s.h:185
int128 operator*(const int128 &a, const int128 &b) noexcept
Definition int128s.h:152
int128 operator^(const int128 &a, const int128 &b) noexcept
Definition int128s.h:168
bool operator!=(const int128 &a, const int128 &b) noexcept
Definition int128s.h:177