Skip to content

intx::uint

More...

#include <intx.hpp>

Public Types

Name
using uint64_t word_type

Public Functions

Name
constexpr uint() =default
template <unsigned M,typename =typename std::enable_if_t<(M < N)>>
constexpr
uint(const uint< M > & x)
Implicit converting constructor for any smaller uint type.
template <typename... T,typename =std::enable_if_t...>>>
constexpr
uint(T... v)
uint64_t & operator[](size_t i)
const uint64_t & operator[](size_t i) const
constexpr operator bool() const
template <unsigned M,typename =typename std::enable_if_t<(M < N)>>
operator uint< M >() const
template <typename Int ,typename =typename std::enable_if_t>>
operator Int() const
Explicit converting operator for all builtin integral types.

Public Attributes

Name
auto word_num_bits
auto num_bits
auto num_words

Detailed Description

template <unsigned N>
struct intx::uint;

Public Types Documentation

using word_type

using intx::uint< N >::word_type = uint64_t;

Public Functions Documentation

function uint

constexpr uint() =default

function uint

template <unsigned M,
typename  =typename std::enable_if_t<(M < N)>>
inline constexpr uint(
    const uint< M > & x
)

Implicit converting constructor for any smaller uint type.

function uint

template <typename... T,
typename  =std::enable_if_t<std::conjunction_v<std::is_convertible<T, uint64_t>...>>>
inline constexpr uint(
    T... v
)

function operator[]

inline uint64_t & operator[](
    size_t i
)

function operator[]

inline const uint64_t & operator[](
    size_t i
) const

function operator bool

inline explicit constexpr operator bool() const

function operator uint< M >

template <unsigned M,
typename  =typename std::enable_if_t<(M < N)>>
inline explicit operator uint< M >() const

function operator Int

template <typename Int ,
typename  =typename std::enable_if_t<std::is_integral_v<Int>>>
inline explicit operator Int() const

Explicit converting operator for all builtin integral types.

Public Attributes Documentation

variable word_num_bits

static auto word_num_bits = sizeof(word_type) * 8;

variable num_bits

static auto num_bits = N;

variable num_words

static auto num_words = num_bits / word_num_bits;

Updated on 2026-04-13 at 23:22:46 -0700