clang-format and clang-tidy fixes for 276fde9d

This commit is contained in:
github-actions 2021-04-10 18:37:08 +00:00
parent 276fde9d3f
commit 397059cea4
3 changed files with 32 additions and 31 deletions

View File

@ -75,8 +75,9 @@ uint256_t exp(uint256_t number, uint256_t power, const uint256_t &mod) {
ans = (ans * number) % mod; ans = (ans * number) % mod;
} }
power >>= 1; power >>= 1;
if (power) if (power) {
number = (number * number) % mod; number = (number * number) % mod;
}
} }
return ans; return ans;
} }
@ -90,7 +91,8 @@ uint256_t exp(uint256_t number, uint256_t power, const uint256_t &mod) {
* @param mod Given field * @param mod Given field
* @return the resultant point * @return the resultant point
*/ */
Point addition(Point a, Point b, uint256_t curve_a_coeff, uint256_t mod) { Point addition(Point a, Point b, const uint256_t &curve_a_coeff,
uint256_t mod) {
uint256_t lambda(0); /// Slope uint256_t lambda(0); /// Slope
uint256_t zero(0); /// value zero uint256_t zero(0); /// value zero
lambda = zero = 0; lambda = zero = 0;
@ -138,11 +140,11 @@ Point addition(Point a, Point b, uint256_t curve_a_coeff, uint256_t mod) {
* @returns the resultant point * @returns the resultant point
*/ */
Point multiply(const Point &a, const uint256_t &curve_a_coeff, uint256_t p, Point multiply(const Point &a, const uint256_t &curve_a_coeff, uint256_t p,
uint256_t mod) { const uint256_t &mod) {
Point N = a; Point N = a;
N.x %= mod; N.x %= mod;
N.y %= mod; N.y %= mod;
uint256_t inf; uint256_t inf{};
inf = ~uint256_t(0); inf = ~uint256_t(0);
Point Q = {inf, inf}; Point Q = {inf, inf};
while (p) { while (p) {
@ -155,8 +157,9 @@ Point multiply(const Point &a, const uint256_t &curve_a_coeff, uint256_t p,
} }
} }
p >>= 1; p >>= 1;
if (p) if (p) {
N = addition(N, N, curve_a_coeff, mod); N = addition(N, N, curve_a_coeff, mod);
}
} }
return Q; return Q;
} }

View File

@ -57,7 +57,7 @@ std::string add(const std::string &first, const std::string &second) {
* @details 128-bit numbers. * @details 128-bit numbers.
*/ */
class uint128_t { class uint128_t {
uint64_t f, s; /// First and second half of 128 bit number. uint64_t f{}, s{}; /// First and second half of 128 bit number.
/** /**
* @brief Get integer from given string. * @brief Get integer from given string.
@ -118,13 +118,13 @@ class uint128_t {
* @brief Copy constructor * @brief Copy constructor
* @param num 128-bit unsigned integer * @param num 128-bit unsigned integer
*/ */
uint128_t(const uint128_t &num) : f(num.f), s(num.s) {} uint128_t(const uint128_t &num) = default;
/** /**
* @brief Move constructor * @brief Move constructor
* @param num 128-bit unsigned integer * @param num 128-bit unsigned integer
*/ */
uint128_t(uint128_t &&num) : f(std::move(num.f)), s(std::move(num.s)) {} uint128_t(uint128_t &&num) noexcept : f(num.f), s(num.s) {}
/** /**
* @brief Destructor for uint128_t * @brief Destructor for uint128_t
@ -138,8 +138,9 @@ class uint128_t {
*/ */
inline uint32_t _lez() { inline uint32_t _lez() {
#ifndef _MSC_VER #ifndef _MSC_VER
if (f) if (f) {
return __builtin_clzll(f); return __builtin_clzll(f);
}
return 64 + __builtin_clzll(s); return 64 + __builtin_clzll(s);
#else #else
unsigned long r = 0; unsigned long r = 0;
@ -160,8 +161,9 @@ class uint128_t {
*/ */
inline uint32_t _trz() { inline uint32_t _trz() {
#ifndef _MSC_VER #ifndef _MSC_VER
if (f) if (f) {
return __builtin_ctzll(f); return __builtin_ctzll(f);
}
return 64 + __builtin_ctzll(s); return 64 + __builtin_ctzll(s);
#else #else
unsigned long r = 0; unsigned long r = 0;
@ -178,11 +180,11 @@ class uint128_t {
inline uint32_t _len() { return _lez(); } inline uint32_t _len() { return _lez(); }
// Casting operators // Casting operators
inline operator bool() const { return f || s; } inline explicit operator bool() const { return f || s; }
template <typename T, typename = typename std::enable_if< template <typename T, typename = typename std::enable_if<
std::is_integral<T>::value, T>::type> std::is_integral<T>::value, T>::type>
inline operator T() const { inline explicit operator T() const {
return static_cast<T>(s); return static_cast<T>(s);
} }
@ -210,11 +212,7 @@ class uint128_t {
return *this; return *this;
} }
inline uint128_t &operator=(const uint128_t &p) { inline uint128_t &operator=(const uint128_t &p) = default;
this->f = p.f;
this->s = p.s;
return *this;
}
inline uint128_t &operator=(uint128_t &&p) = default; inline uint128_t &operator=(uint128_t &&p) = default;

View File

@ -31,7 +31,7 @@ struct std::is_unsigned<uint256_t> : std::true_type {};
* @details 256-bit number class. * @details 256-bit number class.
*/ */
class uint256_t { class uint256_t {
uint128_t f, s; /// First and second half of 256 bit number. uint128_t f{}, s{}; /// First and second half of 256 bit number.
/** /**
* @brief Get integer from given string. * @brief Get integer from given string.
@ -81,20 +81,22 @@ class uint256_t {
* @brief Copy constructor * @brief Copy constructor
* @param num 256-bit unsigned integer * @param num 256-bit unsigned integer
*/ */
uint256_t(const uint256_t &num) : f(num.f), s(num.s) {} uint256_t(const uint256_t &num) = default;
/** /**
* @brief Move constructor * @brief Move constructor
* @param num 256-bit unsigned integer * @param num 256-bit unsigned integer
*/ */
uint256_t(uint256_t &&num) : f(std::move(num.f)), s(std::move(num.s)) {} uint256_t(uint256_t &&num) noexcept
: f(std::move(num.f)), s(std::move(num.s)) {}
/** /**
* @brief Parameterized constructor * @brief Parameterized constructor
* @param high higher part 128-bit unsigned integer * @param high higher part 128-bit unsigned integer
* @param low lower part 128-bit unsigned integer * @param low lower part 128-bit unsigned integer
*/ */
uint256_t(const uint128_t &high, const uint128_t &low) : f(high), s(low) {} uint256_t(uint128_t high, uint128_t low)
: f(std::move(high)), s(std::move(low)) {}
/** /**
* @brief Parameterized constructor * @brief Parameterized constructor
@ -114,8 +116,9 @@ class uint256_t {
* @returns Integer denoting leading zeroes * @returns Integer denoting leading zeroes
*/ */
inline uint32_t _lez() { inline uint32_t _lez() {
if (f) if (f) {
return f._lez(); return f._lez();
}
return 128 + s._lez(); return 128 + s._lez();
} }
@ -125,25 +128,26 @@ class uint256_t {
* @returns Integer denoting Trailing zeroes * @returns Integer denoting Trailing zeroes
*/ */
inline uint32_t _trz() { inline uint32_t _trz() {
if (s) if (s) {
return s._trz(); return s._trz();
}
return 128 + f._trz(); return 128 + f._trz();
} }
inline uint32_t _len() { return _lez(); } inline uint32_t _len() { return _lez(); }
inline operator bool() const { return f || s; } inline explicit operator bool() const { return f || s; }
/** /**
* @brief casting operator * @brief casting operator
*/ */
template <typename T, typename = typename std::enable_if< template <typename T, typename = typename std::enable_if<
std::is_integral<T>::value, T>::type> std::is_integral<T>::value, T>::type>
inline operator T() const { inline explicit operator T() const {
return static_cast<T>(s); return static_cast<T>(s);
} }
inline operator uint128_t() const { return s; } inline explicit operator uint128_t() const { return s; }
/** /**
* @brief returns lower 128-bit integer part * @brief returns lower 128-bit integer part
@ -158,11 +162,7 @@ class uint256_t {
inline uint128_t upper() const { return f; } inline uint128_t upper() const { return f; }
// Assign // Assign
inline uint256_t &operator=(const uint256_t &p) { inline uint256_t &operator=(const uint256_t &p) = default;
this->f = p.f;
this->s = p.s;
return *this;
}
template <typename T, typename = typename std::enable_if< template <typename T, typename = typename std::enable_if<
std::is_integral<T>::value, T>::type> std::is_integral<T>::value, T>::type>