ZXFoundation™ 26h2
Loading...
Searching...
No Matches
lib::bit_field< T, Numbering > Class Template Referenceexport

Public Types

using numbering = Numbering
using storage_type = T
using traits = storage_traits<T>

Public Member Functions

constexpr bit_field (T v) noexcept
constexpr auto clear (usize bit) noexcept -> bit_field &
template<usize A, usize B, class Transformer = void>
constexpr auto extract () const noexcept
template<usize A, usize B, usize Alignment>
constexpr auto extract_aligned () const noexcept -> u64
constexpr auto flip (usize bit) noexcept -> bit_field &
template<usize A, usize B, class Transformer = void, class ValT>
constexpr auto insert (ValT &&v) noexcept -> bit_field &
template<usize A, usize B, usize Alignment>
constexpr auto insert_aligned (u64 address) noexcept -> bit_field &
constexpr operator T () const noexcept
constexpr auto operator[] (this auto &&self, usize bit) noexcept
constexpr auto raw () const noexcept -> const T &
constexpr auto raw () noexcept -> T &
constexpr auto set (usize bit, bool v=true) noexcept -> bit_field &
constexpr auto test (usize bit) const noexcept -> bool
constexpr auto try_clear (usize bit) noexcept -> std::expected< void, kernel_error >
constexpr auto try_flip (usize bit) noexcept -> std::expected< void, kernel_error >
constexpr auto try_set (usize bit, bool v=true) noexcept -> std::expected< void, kernel_error >
constexpr auto try_test (usize bit) const noexcept -> std::expected< bool, kernel_error >
constexpr auto value () const noexcept -> T

Static Public Attributes

static constexpr usize extent = traits::total_bits

Friends

constexpr auto operator<=> (const bit_field &, const bit_field &) noexcept=default
constexpr auto operator== (const bit_field &, const bit_field &) noexcept -> bool=default

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