void add(BigInt a) { NativeBN.BN_add(this.bignum, this.bignum, a.bignum); }
void addPositiveInt(int w) { NativeBN.BN_add_word(this.bignum, w); }
void putBigEndian(byte[] a, boolean neg) { this.makeValid(); NativeBN.BN_bin2bn(a, a.length, neg, this.bignum); }
void putDecString(String original) { String s = checkString(original, 10); this.makeValid(); int usedLen = NativeBN.BN_dec2bn(this.bignum, s); if (usedLen < s.length()) { throw invalidBigInteger(original); } }
void putCopy(BigInt from) { this.makeValid(); NativeBN.BN_copy(this.bignum, from.bignum); }
String hexString() { return NativeBN.BN_bn2hex(this.bignum); }
static int cmp(BigInt a, BigInt b) { return NativeBN.BN_cmp(a.bignum, b.bignum); }
byte[] bigEndianMagnitude() { return NativeBN.BN_bn2bin(this.bignum); }
String decString() { return NativeBN.BN_bn2dec(this.bignum); }
static void division(BigInt dividend, BigInt divisor, BigInt quotient, BigInt remainder) { long quot, rem; if (quotient != null) { quotient.makeValid(); quot = quotient.bignum; } else { quot = 0; } if (remainder != null) { remainder.makeValid(); rem = remainder.bignum; } else { rem = 0; } NativeBN.BN_div(quot, rem, dividend.bignum, divisor.bignum); }
void putDecString(String original) { String s = checkString(original, 10); this.makeValid(); int usedLen = NativeBN.BN_dec2bn(this.bignum, s); if (usedLen < s.length()) { throw invalidBigInteger(original); } }
void putCopy(BigInt from) { this.makeValid(); NativeBN.BN_copy(this.bignum, from.bignum); }
String hexString() { return NativeBN.BN_bn2hex(this.bignum); }
static int cmp(BigInt a, BigInt b) { return NativeBN.BN_cmp(a.bignum, b.bignum); }
byte[] bigEndianMagnitude() { return NativeBN.BN_bn2bin(this.bignum); }
String decString() { return NativeBN.BN_bn2dec(this.bignum); }
static void division(BigInt dividend, BigInt divisor, BigInt quotient, BigInt remainder) { long quot, rem; if (quotient != null) { quotient.makeValid(); quot = quotient.bignum; } else { quot = 0; } if (remainder != null) { remainder.makeValid(); rem = remainder.bignum; } else { rem = 0; } NativeBN.BN_div(quot, rem, dividend.bignum, divisor.bignum); }
static BigInt addition(BigInt a, BigInt b) { BigInt r = newBigInt(); NativeBN.BN_add(r.bignum, a.bignum, b.bignum); return r; }
void putDecString(String original) { String s = checkString(original, 10); this.makeValid(); int usedLen = NativeBN.BN_dec2bn(this.bignum, s); if (usedLen < s.length()) { throw invalidBigInteger(original); } }
void putCopy(BigInt from) { this.makeValid(); NativeBN.BN_copy(this.bignum, from.bignum); }