Nugget
Loading...
Searching...
No Matches
Classes | Concepts | Typedefs
Utilities::BitFieldInternal Namespace Reference

Classes

struct  BitFieldHelper
 
struct  ComputeOffset
 
struct  ComputeStorage
 
struct  DefaultBitSize
 
struct  DefaultBitSize< bool >
 

Concepts

concept  IntegralLike
 

Typedefs

template<std::integral T, std::integral U = T>
using SignedType = typename std::conditional_t< std::is_signed_v< T >, std::make_signed_t< U >, std::make_unsigned_t< U > >
 
template<unsigned span>
using StorageType = typename std::conditional_t< span<=8, uint8_t, typename std::conditional_t< span<=16, uint16_t, typename std::conditional_t< span<=32, uint32_t, void > > >
 
template<unsigned span, std::integral T>
using SignedStorageType = SignedType< T, StorageType< span > >
 

Typedef Documentation

◆ SignedStorageType

template<unsigned span, std::integral T>
using Utilities::BitFieldInternal::SignedStorageType = typedef SignedType<T, StorageType<span> >

◆ SignedType

template<std::integral T, std::integral U = T>
using Utilities::BitFieldInternal::SignedType = typedef typename std::conditional_t<std::is_signed_v<T>, std::make_signed_t<U>, std::make_unsigned_t<U> >

◆ StorageType

template<unsigned span>
using Utilities::BitFieldInternal::StorageType = typedef typename std::conditional_t< span <= 8, uint8_t, typename std::conditional_t<span <= 16, uint16_t, typename std::conditional_t<span <= 32, uint32_t, void> >>