#include "third_party/private-join-and-compute/src/crypto/big_num.h"
#include <cmath>
#include <vector>
#include "third_party/private-join-and-compute/src/chromium_patch.h"
#include "third_party/private-join-and-compute/src/crypto/context.h"
#include "third_party/private-join-and-compute/src/crypto/openssl.inc"
#include "third_party/private-join-and-compute/src/util/status.inc"
namespace private_join_and_compute {
BigNum::BigNum(const BigNum& other)
: … { … }
BigNum& BigNum::operator=(const BigNum& other) { … }
BigNum::BigNum(BigNum&& other)
: … { … }
BigNum& BigNum::operator=(BigNum&& other) { … }
BigNum::BigNum(BN_CTX* bn_ctx, uint64_t number) : … { … }
BigNum::BigNum(BN_CTX* bn_ctx, const std::string& bytes)
: … { … }
BigNum::BigNum(BN_CTX* bn_ctx, const unsigned char* bytes, int length)
: … { … }
BigNum::BigNum(BN_CTX* bn_ctx) { … }
BigNum::BigNum(BN_CTX* bn_ctx, BignumPtr bn) { … }
const BIGNUM* BigNum::GetConstBignumPtr() const { … }
std::string BigNum::ToBytes() const { … }
StatusOr<uint64_t> BigNum::ToIntValue() const { … }
int BigNum::BitLength() const { … }
bool BigNum::IsPrime(double prime_error_probability) const { … }
bool BigNum::IsSafePrime(double prime_error_probability) const { … }
bool BigNum::IsZero() const { … }
bool BigNum::IsOne() const { … }
bool BigNum::IsNonNegative() const { … }
BigNum BigNum::GetLastNBits(int n) const { … }
bool BigNum::IsBitSet(int n) const { … }
BigNum BigNum::Neg() const { … }
BigNum BigNum::Add(const BigNum& val) const { … }
BigNum BigNum::Mul(const BigNum& val) const { … }
BigNum BigNum::Sub(const BigNum& val) const { … }
BigNum BigNum::Div(const BigNum& val) const { … }
BigNum BigNum::DivAndTruncate(const BigNum& val) const { … }
int BigNum::CompareTo(const BigNum& val) const { … }
BigNum BigNum::Exp(const BigNum& exponent) const { … }
BigNum BigNum::Mod(const BigNum& m) const { … }
BigNum BigNum::ModAdd(const BigNum& val, const BigNum& m) const { … }
BigNum BigNum::ModSub(const BigNum& val, const BigNum& m) const { … }
BigNum BigNum::ModMul(const BigNum& val, const BigNum& m) const { … }
BigNum BigNum::ModExp(const BigNum& exponent, const BigNum& m) const { … }
BigNum BigNum::ModSqr(const BigNum& m) const { … }
BigNum BigNum::ModInverse(const BigNum& m) const { … }
BigNum BigNum::ModSqrt(const BigNum& m) const { … }
BigNum BigNum::ModNegate(const BigNum& m) const { … }
BigNum BigNum::Lshift(int n) const { … }
BigNum BigNum::Rshift(int n) const { … }
BigNum BigNum::Gcd(const BigNum& val) const { … }
}