|
|
@@ -27,21 +27,8 @@ namespace detail {
|
|
|
biginteger::biginteger()
|
|
|
: biginteger(false, 0) {}
|
|
|
|
|
|
-biginteger::biginteger(int32_t value)
|
|
|
-: biginteger(static_cast<int64_t>(value)) {}
|
|
|
-
|
|
|
-biginteger::biginteger(uint32_t value)
|
|
|
-: biginteger(static_cast<uint64_t>(value)) {}
|
|
|
-
|
|
|
-biginteger::biginteger(int64_t value) :
|
|
|
-biginteger(value < 0, static_cast<uint64_t>(value < 0 ? -value : value)) {}
|
|
|
-
|
|
|
-biginteger::biginteger(uint64_t value)
|
|
|
-: biginteger(false, value) {}
|
|
|
-
|
|
|
biginteger::biginteger(char const * number)
|
|
|
: is_negative(number[0] == '-') {
|
|
|
- // 999,999,996,000,000,005,999,999,996,000,000,001
|
|
|
if (is_negative) ++number;
|
|
|
auto len = strlen(number);
|
|
|
auto elems = len/SEG_DIGITS;
|