Longfellow ZK 0290cb32
Loading...
Searching...
No Matches
proofs::Nat< W64 > Class Template Reference
Inheritance diagram for proofs::Nat< W64 >:
Collaboration diagram for proofs::Nat< W64 >:

Public Types

using Super = Limb<W64>
using T = Nat<W64>
using limb_t = typename Super::limb_t
Public Types inherited from proofs::Limb< W64 >
using T = Limb<W64>
using limb_t = uint32_t

Public Member Functions

 Nat (uint64_t x)
 Nat (const std::array< uint64_t, kU64 > &a)
 Nat (const StaticString &ss)
template<size_t LEN>
 Nat (const char(&p)[LEN])
bool operator< (const T &y) const
Tadd (const T &y)
Tsub (const T &y)
Public Member Functions inherited from proofs::Limb< W64 >
 Limb (uint64_t x)
 Limb (const std::array< uint64_t, kU64 > &a)
std::array< uint64_t, kU64 > u64 () const
void to_bytes (uint8_t a[]) const
bool operator== (const T &other) const
bool operator!= (const T &other) const
limb_t shiftr (size_t z)
limb_t bit (size_t pos) const

Static Public Member Functions

static T of_bytes (const uint8_t a[])
static std::optional< unsigned > safe_digit (char c, limb_t base)
static std::optional< Tof_untrusted_string (const char *s)

Data Fields

limb_t limb_ [kLimbs]
Data Fields inherited from proofs::Limb< W64 >
limb_t limb_ [kLimbs]

Static Public Attributes

static constexpr size_t kMaxStringLen = 20 * W64 + 1
static constexpr size_t kLimbs
static constexpr size_t kU64
Static Public Attributes inherited from proofs::Limb< W64 >
static constexpr size_t kBytes = 8 * W64
static constexpr size_t kBits = 64 * W64
static constexpr size_t kLimbs = kBytes / sizeof(limb_t)
static constexpr size_t kU64 = W64
static constexpr size_t kBitsPerLimb = 8 * sizeof(limb_t)

Additional Inherited Members

Static Protected Member Functions inherited from proofs::Limb< W64 >
static void assign (uint64_t d[], size_t ns, const uint64_t s[])
static void assign (uint32_t d[], size_t ns, const uint64_t s[])
static void unassign (const uint64_t d[], size_t ns, uint64_t s[])
static void unassign (const uint32_t d[], size_t ns, uint64_t s[])
static const uint8_t * of_bytes (uint64_t *r, const uint8_t *a)
static const uint8_t * of_bytes (uint32_t *r, const uint8_t *a)
static uint8_t * to_bytes (const uint64_t *r, uint8_t *a)
static uint8_t * to_bytes (const uint32_t *r, uint8_t *a)

The documentation for this class was generated from the following file: