ZXFoundation™ 26h2
Loading...
Searching...
No Matches
bitfield.cxxm File Reference

C++ wrapper for bitfields. More...

import std;
import zxfoundation.base.types;
Include dependency graph for bitfield.cxxm:

Data Structures

class  lib::bit_field< T, Numbering >
class  lib::bit_iterator< T, Numbering >
class  lib::bit_range_ref< T >
class  lib::bit_ref< T >
class  lib::bitfield_ref< T, Numbering >
struct  lib::field_spec< Name, Start, End >
struct  lib::fixed_string< N >
struct  lib::lsb0_t
struct  lib::msb0_t
class  lib::record< T, Numbering, Fields >
class  lib::record_ref< T, Numbering, Fields >
struct  std::tuple_element< I, lib::record< T, Numbering, Fields... > >
struct  std::tuple_size< lib::record< T, Numbering, Fields... > >

Concepts

concept  lib::bit_storage

Typedefs

using lib::bf16 = bit_field<u16>
using lib::bf32 = bit_field<u32>
using lib::bf64 = bit_field<u64>
using lib::bf64_ref = bitfield_ref<u64>
using lib::bf8 = bit_field<u8>
using lib::bf8_ref = bitfield_ref<u8>

Functions

template<bit_storage T>
constexpr T lib::bitmask (usize count) noexcept
template<usize N>
 lib::fixed_string (const char(&)[N]) -> fixed_string< N >
template<usize I, bit_storage T, class Numbering, class... Fields>
constexpr T lib::get (const record< T, Numbering, Fields... > &r) noexcept
template<fixed_string Name, class... Fs>
consteval usize lib::detail::index_of_field () noexcept
template<usize N1, usize N2>
constexpr bool lib::operator== (const fixed_string< N1 > &a, const fixed_string< N2 > &b) noexcept

Variables

template<class T>
constexpr bool lib::detail::always_false = false
constexpr lsb0_t lib::lsb0 {}
constexpr msb0_t lib::msb0 {}

Detailed Description

C++ wrapper for bitfields.

SPDX-License-Identifier: Apache-2.0