Iros
 
Loading...
Searching...
No Matches
di::bit Namespace Reference

Namespaces

namespace  detail
 

Classes

class  BigEndian
 
struct  BitEnum
 
struct  BitField
 
struct  BitFlag
 
class  BitSet
 
class  BitSpan
 
class  BitStruct
 
class  LittleEndian
 

Typedefs

template<concepts::IntegralOrEnum T, Endian endian>
using StaticEndian = meta::Conditional<endian == Endian::Little, LittleEndian<T>, BigEndian<T>>
 

Enumerations

enum class  Endian { Little = __ORDER_LITTLE_ENDIAN__ , Big = __ORDER_BIG_ENDIAN__ , Native = __BYTE_ORDER__ }
 

Variables

constexpr auto host_to_big_endian = detail::HostToBigEndianFunction {}
 
constexpr auto big_endian_to_host = detail::HostToBigEndianFunction {}
 
constexpr auto host_to_little_endian = detail::HostToLittleEndianFunction {}
 
constexpr auto little_endian_to_host = detail::HostToLittleEndianFunction {}
 
constexpr auto bit_ceil = detail::BitCeilFunction {}
 
constexpr auto bit_floor = detail::BitFloorFunction {}
 
constexpr auto bit_width = detail::BitWidthFunction {}
 
constexpr auto byteswap = detail::ByteswapFunction {}
 
constexpr auto countl_one = detail::CountlOneFunction {}
 
constexpr auto countl_zero = detail::CountlZeroFunction {}
 
constexpr auto countr_one = detail::CountrOneFunction {}
 
constexpr auto countr_zero = detail::CountrZeroFunction {}
 
constexpr auto has_single_bit = detail::HasSingleBitFunction {}
 
constexpr auto popcount = detail::PopcountFunction {}
 
constexpr auto rotl = detail::RotlFunction {}
 
constexpr auto rotr = detail::RotrFunction {}
 

Typedef Documentation

◆ StaticEndian

template<concepts::IntegralOrEnum T, Endian endian>
using di::bit::StaticEndian = meta::Conditional<endian == Endian::Little, LittleEndian<T>, BigEndian<T>>

Enumeration Type Documentation

◆ Endian

enum class di::bit::Endian
strong
Enumerator
Little 
Big 
Native 

Variable Documentation

◆ big_endian_to_host

auto di::bit::big_endian_to_host = detail::HostToBigEndianFunction {}
inlineconstexpr

◆ bit_ceil

auto di::bit::bit_ceil = detail::BitCeilFunction {}
inlineconstexpr

◆ bit_floor

auto di::bit::bit_floor = detail::BitFloorFunction {}
inlineconstexpr

◆ bit_width

auto di::bit::bit_width = detail::BitWidthFunction {}
inlineconstexpr

◆ byteswap

auto di::bit::byteswap = detail::ByteswapFunction {}
inlineconstexpr

◆ countl_one

auto di::bit::countl_one = detail::CountlOneFunction {}
inlineconstexpr

◆ countl_zero

auto di::bit::countl_zero = detail::CountlZeroFunction {}
inlineconstexpr

◆ countr_one

auto di::bit::countr_one = detail::CountrOneFunction {}
inlineconstexpr

◆ countr_zero

auto di::bit::countr_zero = detail::CountrZeroFunction {}
inlineconstexpr

◆ has_single_bit

auto di::bit::has_single_bit = detail::HasSingleBitFunction {}
inlineconstexpr

◆ host_to_big_endian

auto di::bit::host_to_big_endian = detail::HostToBigEndianFunction {}
inlineconstexpr

◆ host_to_little_endian

auto di::bit::host_to_little_endian = detail::HostToLittleEndianFunction {}
inlineconstexpr

◆ little_endian_to_host

auto di::bit::little_endian_to_host = detail::HostToLittleEndianFunction {}
inlineconstexpr

◆ popcount

auto di::bit::popcount = detail::PopcountFunction {}
inlineconstexpr

◆ rotl

auto di::bit::rotl = detail::RotlFunction {}
inlineconstexpr

◆ rotr

auto di::bit::rotr = detail::RotrFunction {}
inlineconstexpr