Packed 128-bit key storage with a deliberately partial operator set.
More...
#include <tess/core/uint128.h>
|
template<typename T>
requires std::unsigned_integral<T> |
| constexpr | UInt128 (T value) noexcept |
template<typename T>
requires std::signed_integral<T> |
| constexpr | UInt128 (T value) noexcept |
|
constexpr | operator std::uint64_t () const noexcept |
|
constexpr auto | operator<<= (std::uint32_t count) noexcept -> UInt128 & |
|
constexpr auto | operator>>= (std::uint32_t count) noexcept -> UInt128 & |
|
|
static constexpr auto | from_parts (std::uint64_t high, std::uint64_t low) noexcept -> UInt128 |
|
|
std::uint64_t | hi = 0 |
|
std::uint64_t | lo = 0 |
|
|
constexpr auto | operator== (UInt128 lhs, UInt128 rhs) noexcept -> bool=default |
|
constexpr auto | operator<=> (UInt128 lhs, UInt128 rhs) noexcept -> std::strong_ordering=default |
|
constexpr auto | operator* (UInt128 lhs, UInt128 rhs) noexcept -> UInt128 |
|
constexpr auto | operator- (UInt128 lhs, UInt128 rhs) noexcept -> UInt128 |
|
constexpr auto | operator& (UInt128 lhs, UInt128 rhs) noexcept -> UInt128 |
|
constexpr auto | operator| (UInt128 lhs, UInt128 rhs) noexcept -> UInt128 |
|
constexpr auto | operator<< (UInt128 value, std::uint32_t count) noexcept -> UInt128 |
|
constexpr auto | operator>> (UInt128 value, std::uint32_t count) noexcept -> UInt128 |
Packed 128-bit key storage with a deliberately partial operator set.
The documentation for this struct was generated from the following file: