#include <bignum.h>
Public Member Functions | |
Bignum () | |
void | AssignUInt16 (uint16_t value) |
void | AssignUInt64 (uint64_t value) |
void | AssignBignum (const Bignum &other) |
void | AssignDecimalString (Vector< const char > value) |
void | AssignHexString (Vector< const char > value) |
void | AssignPowerUInt16 (uint16_t base, int exponent) |
void | AddUInt16 (uint16_t operand) |
void | AddUInt64 (uint64_t operand) |
void | AddBignum (const Bignum &other) |
void | SubtractBignum (const Bignum &other) |
void | Square () |
void | ShiftLeft (int shift_amount) |
void | MultiplyByUInt32 (uint32_t factor) |
void | MultiplyByUInt64 (uint64_t factor) |
void | MultiplyByPowerOfTen (int exponent) |
void | Times10 () |
uint16_t | DivideModuloIntBignum (const Bignum &other) |
bool | ToHexString (char *buffer, int buffer_size) const |
Static Public Member Functions | |
static int | Compare (const Bignum &a, const Bignum &b) |
static bool | Equal (const Bignum &a, const Bignum &b) |
static bool | LessEqual (const Bignum &a, const Bignum &b) |
static bool | Less (const Bignum &a, const Bignum &b) |
static int | PlusCompare (const Bignum &a, const Bignum &b, const Bignum &c) |
static bool | PlusEqual (const Bignum &a, const Bignum &b, const Bignum &c) |
static bool | PlusLessEqual (const Bignum &a, const Bignum &b, const Bignum &c) |
static bool | PlusLess (const Bignum &a, const Bignum &b, const Bignum &c) |
Static Public Attributes | |
static const int | kMaxSignificantBits = 3584 |
Definition at line 35 of file bignum.h.
void double_conversion::Bignum::AddBignum | ( | const Bignum & | other | ) |
Definition at line 169 of file bignum.cc.
References ASSERT.
Referenced by AddUInt64().
void double_conversion::Bignum::AddUInt16 | ( | uint16_t | operand | ) |
void double_conversion::Bignum::AddUInt64 | ( | uint64_t | operand | ) |
Definition at line 161 of file bignum.cc.
References AddBignum(), and AssignUInt64().
Referenced by AssignDecimalString().
void double_conversion::Bignum::AssignBignum | ( | const Bignum & | other | ) |
void double_conversion::Bignum::AssignDecimalString | ( | Vector< const char > | value | ) |
Definition at line 101 of file bignum.cc.
References AddUInt64(), double_conversion::Vector< T >::length(), and MultiplyByPowerOfTen().
void double_conversion::Bignum::AssignHexString | ( | Vector< const char > | value | ) |
Definition at line 131 of file bignum.cc.
References double_conversion::Vector< T >::length().
void double_conversion::Bignum::AssignPowerUInt16 | ( | uint16_t | base, | |
int | exponent | |||
) |
Definition at line 412 of file bignum.cc.
References ASSERT, AssignUInt16(), AssignUInt64(), MultiplyByUInt32(), ShiftLeft(), and Square().
void double_conversion::Bignum::AssignUInt16 | ( | uint16_t | value | ) |
Definition at line 47 of file bignum.cc.
References ASSERT.
Referenced by AssignPowerUInt16().
void double_conversion::Bignum::AssignUInt64 | ( | uint64_t | value | ) |
Definition at line 58 of file bignum.cc.
Referenced by AddUInt64(), and AssignPowerUInt16().
uint16_t double_conversion::Bignum::DivideModuloIntBignum | ( | const Bignum & | other | ) |
Definition at line 486 of file bignum.cc.
References ASSERT, LessEqual(), and SubtractBignum().
static bool double_conversion::Bignum::LessEqual | ( | const Bignum & | a, | |
const Bignum & | b | |||
) | [inline, static] |
Definition at line 80 of file bignum.h.
References Compare().
Referenced by DivideModuloIntBignum(), and SubtractBignum().
void double_conversion::Bignum::MultiplyByPowerOfTen | ( | int | exponent | ) |
Definition at line 300 of file bignum.cc.
References ASSERT, MultiplyByUInt32(), MultiplyByUInt64(), ShiftLeft(), and UINT64_2PART_C.
Referenced by AssignDecimalString().
void double_conversion::Bignum::MultiplyByUInt32 | ( | uint32_t | factor | ) |
Definition at line 247 of file bignum.cc.
References ASSERT.
Referenced by AssignPowerUInt16(), MultiplyByPowerOfTen(), and Times10().
void double_conversion::Bignum::MultiplyByUInt64 | ( | uint64_t | factor | ) |
Definition at line 273 of file bignum.cc.
References ASSERT.
Referenced by MultiplyByPowerOfTen().
int double_conversion::Bignum::PlusCompare | ( | const Bignum & | a, | |
const Bignum & | b, | |||
const Bignum & | c | |||
) | [static] |
Definition at line 633 of file bignum.cc.
References ASSERT.
Referenced by PlusEqual(), PlusLess(), and PlusLessEqual().
static bool double_conversion::Bignum::PlusEqual | ( | const Bignum & | a, | |
const Bignum & | b, | |||
const Bignum & | c | |||
) | [inline, static] |
Definition at line 89 of file bignum.h.
References PlusCompare().
static bool double_conversion::Bignum::PlusLess | ( | const Bignum & | a, | |
const Bignum & | b, | |||
const Bignum & | c | |||
) | [inline, static] |
Definition at line 97 of file bignum.h.
References PlusCompare().
static bool double_conversion::Bignum::PlusLessEqual | ( | const Bignum & | a, | |
const Bignum & | b, | |||
const Bignum & | c | |||
) | [inline, static] |
Definition at line 93 of file bignum.h.
References PlusCompare().
void double_conversion::Bignum::ShiftLeft | ( | int | shift_amount | ) |
Definition at line 238 of file bignum.cc.
Referenced by AssignPowerUInt16(), and MultiplyByPowerOfTen().
void double_conversion::Bignum::Square | ( | ) |
Definition at line 340 of file bignum.cc.
References ASSERT, and UNIMPLEMENTED.
Referenced by AssignPowerUInt16().
void double_conversion::Bignum::SubtractBignum | ( | const Bignum & | other | ) |
Definition at line 211 of file bignum.cc.
References ASSERT, and LessEqual().
Referenced by DivideModuloIntBignum().
void double_conversion::Bignum::Times10 | ( | ) | [inline] |
Definition at line 63 of file bignum.h.
References MultiplyByUInt32().
bool double_conversion::Bignum::ToHexString | ( | char * | buffer, | |
int | buffer_size | |||
) | const |
const int double_conversion::Bignum::kMaxSignificantBits = 3584 [static] |