Trait BitSize

Source
pub trait BitSize<const LEN: usize>: DataSize {
    const BITS: usize = LEN;
    const BYTES_CEIL: usize = _;
}
Expand description

Indicates a size of exactly LEN bits.

Provided Associated Constants§

Source

const BITS: usize = LEN

The size of this type in bits.

Source

const BYTES_CEIL: usize = _

The size of this type in bytes, rounded up if it’s not a multiple of 8.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl BitSize<0> for Infallible

Source§

impl BitSize<0> for ()

Source§

impl BitSize<0> for PhantomPinned

Source§

impl BitSize<8> for Ordering

Source§

impl BitSize<8> for Ordering

Source§

impl BitSize<8> for bool

Source§

impl BitSize<8> for i8

Source§

impl BitSize<8> for u8

Source§

impl BitSize<8> for AtomicBool

Source§

impl BitSize<8> for AtomicI8

Source§

impl BitSize<8> for AtomicU8

Source§

impl BitSize<8> for NonZeroI8

Source§

impl BitSize<8> for NonZeroU8

Source§

impl BitSize<16> for i16

Source§

impl BitSize<16> for u16

Source§

impl BitSize<16> for AtomicI16

Source§

impl BitSize<16> for AtomicU16

Source§

impl BitSize<16> for NonZeroI16

Source§

impl BitSize<16> for NonZeroU16

Source§

impl BitSize<32> for char

Source§

impl BitSize<32> for f32

Source§

impl BitSize<32> for i32

Source§

impl BitSize<32> for u32

Source§

impl BitSize<32> for AtomicI32

Source§

impl BitSize<32> for AtomicU32

Source§

impl BitSize<32> for NonZeroI32

Source§

impl BitSize<32> for NonZeroU32

Source§

impl BitSize<64> for f64

Source§

impl BitSize<64> for i64

Source§

impl BitSize<64> for isize

Source§

impl BitSize<64> for u64

Source§

impl BitSize<64> for usize

Source§

impl BitSize<64> for AtomicI64

Source§

impl BitSize<64> for AtomicIsize

Source§

impl BitSize<64> for AtomicU64

Source§

impl BitSize<64> for AtomicUsize

Source§

impl BitSize<64> for NonZeroI64

Source§

impl BitSize<64> for NonZeroIsize

Source§

impl BitSize<64> for NonZeroU64

Source§

impl BitSize<64> for NonZeroUsize

Source§

impl BitSize<128> for i128

Source§

impl BitSize<128> for u128

Source§

impl BitSize<128> for Duration

Source§

impl BitSize<128> for Instant

Source§

impl BitSize<128> for SystemTime

Source§

impl BitSize<128> for NonZeroI128

Source§

impl BitSize<128> for NonZeroU128

Source§

impl BitSize<{$bits * 2}> for &str

Source§

impl BitSize<{$bits * 3}> for String

Source§

impl<K, V> BitSize<{$bits * 3}> for BTreeMap<K, V>

Source§

impl<K, V> BitSize<{$bits * 3}> for HashMap<K, V>

Source§

impl<T> BitSize<0> for PhantomData<T>

Source§

impl<T> BitSize<{$bits * 1}> for Rc<T>

Source§

impl<T> BitSize<{$bits * 1}> for Arc<T>

Source§

impl<T> BitSize<{$bits * 2}> for &[T]

Source§

impl<T> BitSize<{$bits * 2}> for &mut [T]

Source§

impl<T> BitSize<{$bits * 3}> for BinaryHeap<T>

Source§

impl<T> BitSize<{$bits * 3}> for BTreeSet<T>

Source§

impl<T> BitSize<{$bits * 3}> for LinkedList<T>

Source§

impl<T> BitSize<{$bits * 3}> for VecDeque<T>

Source§

impl<T> BitSize<{$bits * 3}> for Vec<T>

Source§

impl<T> BitSize<{$bits * 3}> for HashSet<T>

Source§

impl<T> BitSize<{$bits * 3}> for Mutex<T>

Source§

impl<T: BitSize<8>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<8>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<8>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<8>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<8>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<16>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<16>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<16>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<16>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<16>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<24>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<24>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<24>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<24>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<24>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<32>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<32>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<32>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<32>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<32>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<40>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<40>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<40>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<40>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<40>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<48>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<48>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<48>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<48>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<48>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<56>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<56>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<56>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<56>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<56>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<64>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<64>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<64>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<64>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<64>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<72>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<72>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<72>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<72>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<72>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<80>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<80>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<80>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<80>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<80>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<88>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<88>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<88>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<88>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<88>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<96>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<96>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<96>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<96>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<96>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<104>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<104>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<104>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<104>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<104>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<112>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<112>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<112>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<112>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<112>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<120>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<120>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<120>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<120>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<120>> BitSize<{$bits*$len}> for [T; 16]

Source§

impl<T: BitSize<128>> BitSize<{$bits*$len}> for [T; 1]

Source§

impl<T: BitSize<128>> BitSize<{$bits*$len}> for [T; 2]

Source§

impl<T: BitSize<128>> BitSize<{$bits*$len}> for [T; 4]

Source§

impl<T: BitSize<128>> BitSize<{$bits*$len}> for [T; 8]

Source§

impl<T: BitSize<128>> BitSize<{$bits*$len}> for [T; 16]

Implementors§