Trait bit_struct::BitCount

source ·
pub unsafe trait BitCount {
    const COUNT: usize;
}
Expand description

A trait which defines how many bits are needed to store a struct.

Safety

Define Num as {i,u}{8,16,32,64,128}.

  • when calling core::mem::transmute on Self, only bits [0, COUNT) can be non-zero
  • TryFrom<Num> produces Some(x) <=> core::mem::transmute(num) produces a valid Self(x)
  • TryFrom<Num> produces None <=> core::mem::transmute(num) produces an invalid state for Self

Required Associated Constants§

source

const COUNT: usize

The number of bits associated with this type

Implementations on Foreign Types§

source§

impl BitCount for u8

source§

const COUNT: usize = 8usize

source§

impl BitCount for u16

source§

const COUNT: usize = 16usize

source§

impl BitCount for u32

source§

const COUNT: usize = 32usize

source§

impl BitCount for u64

source§

const COUNT: usize = 64usize

source§

impl BitCount for u128

source§

const COUNT: usize = 128usize

source§

impl BitCount for bool

source§

const COUNT: usize = 1usize

Implementors§

source§

impl BitCount for i2

source§

const COUNT: usize = 2usize

source§

impl BitCount for i3

source§

const COUNT: usize = 3usize

source§

impl BitCount for i4

source§

const COUNT: usize = 4usize

source§

impl BitCount for i5

source§

const COUNT: usize = 5usize

source§

impl BitCount for i6

source§

const COUNT: usize = 6usize

source§

impl BitCount for i7

source§

const COUNT: usize = 7usize

source§

impl BitCount for i9

source§

const COUNT: usize = 9usize

source§

impl BitCount for i10

source§

const COUNT: usize = 10usize

source§

impl BitCount for i11

source§

const COUNT: usize = 11usize

source§

impl BitCount for i12

source§

const COUNT: usize = 12usize

source§

impl BitCount for i13

source§

const COUNT: usize = 13usize

source§

impl BitCount for i14

source§

const COUNT: usize = 14usize

source§

impl BitCount for i15

source§

const COUNT: usize = 15usize

source§

impl BitCount for i17

source§

const COUNT: usize = 17usize

source§

impl BitCount for i18

source§

const COUNT: usize = 18usize

source§

impl BitCount for i19

source§

const COUNT: usize = 19usize

source§

impl BitCount for i20

source§

const COUNT: usize = 20usize

source§

impl BitCount for i21

source§

const COUNT: usize = 21usize

source§

impl BitCount for i22

source§

const COUNT: usize = 22usize

source§

impl BitCount for i23

source§

const COUNT: usize = 23usize

source§

impl BitCount for i24

source§

const COUNT: usize = 24usize

source§

impl BitCount for i25

source§

const COUNT: usize = 25usize

source§

impl BitCount for i26

source§

const COUNT: usize = 26usize

source§

impl BitCount for i27

source§

const COUNT: usize = 27usize

source§

impl BitCount for i28

source§

const COUNT: usize = 28usize

source§

impl BitCount for i29

source§

const COUNT: usize = 29usize

source§

impl BitCount for i30

source§

const COUNT: usize = 30usize

source§

impl BitCount for i31

source§

const COUNT: usize = 31usize

source§

impl BitCount for i33

source§

const COUNT: usize = 33usize

source§

impl BitCount for i34

source§

const COUNT: usize = 34usize

source§

impl BitCount for i35

source§

const COUNT: usize = 35usize

source§

impl BitCount for i36

source§

const COUNT: usize = 36usize

source§

impl BitCount for i37

source§

const COUNT: usize = 37usize

source§

impl BitCount for i38

source§

const COUNT: usize = 38usize

source§

impl BitCount for i39

source§

const COUNT: usize = 39usize

source§

impl BitCount for i40

source§

const COUNT: usize = 40usize

source§

impl BitCount for i41

source§

const COUNT: usize = 41usize

source§

impl BitCount for i42

source§

const COUNT: usize = 42usize

source§

impl BitCount for i43

source§

const COUNT: usize = 43usize

source§

impl BitCount for i44

source§

const COUNT: usize = 44usize

source§

impl BitCount for i45

source§

const COUNT: usize = 45usize

source§

impl BitCount for i46

source§

const COUNT: usize = 46usize

source§

impl BitCount for i47

source§

const COUNT: usize = 47usize

source§

impl BitCount for i48

source§

const COUNT: usize = 48usize

source§

impl BitCount for i49

source§

const COUNT: usize = 49usize

source§

impl BitCount for i50

source§

const COUNT: usize = 50usize

source§

impl BitCount for i51

source§

const COUNT: usize = 51usize

source§

impl BitCount for i52

source§

const COUNT: usize = 52usize

source§

impl BitCount for i53

source§

const COUNT: usize = 53usize

source§

impl BitCount for i54

source§

const COUNT: usize = 54usize

source§

impl BitCount for i55

source§

const COUNT: usize = 55usize

source§

impl BitCount for i56

source§

const COUNT: usize = 56usize

source§

impl BitCount for i57

source§

const COUNT: usize = 57usize

source§

impl BitCount for i58

source§

const COUNT: usize = 58usize

source§

impl BitCount for i59

source§

const COUNT: usize = 59usize

source§

impl BitCount for i60

source§

const COUNT: usize = 60usize

source§

impl BitCount for i61

source§

const COUNT: usize = 61usize

source§

impl BitCount for i62

source§

const COUNT: usize = 62usize

source§

impl BitCount for i63

source§

const COUNT: usize = 63usize

source§

impl BitCount for u1

source§

const COUNT: usize = 1usize

source§

impl BitCount for u2

source§

const COUNT: usize = 2usize

source§

impl BitCount for u3

source§

const COUNT: usize = 3usize

source§

impl BitCount for u4

source§

const COUNT: usize = 4usize

source§

impl BitCount for u5

source§

const COUNT: usize = 5usize

source§

impl BitCount for u6

source§

const COUNT: usize = 6usize

source§

impl BitCount for u7

source§

const COUNT: usize = 7usize

source§

impl BitCount for u9

source§

const COUNT: usize = 9usize

source§

impl BitCount for u10

source§

const COUNT: usize = 10usize

source§

impl BitCount for u11

source§

const COUNT: usize = 11usize

source§

impl BitCount for u12

source§

const COUNT: usize = 12usize

source§

impl BitCount for u13

source§

const COUNT: usize = 13usize

source§

impl BitCount for u14

source§

const COUNT: usize = 14usize

source§

impl BitCount for u15

source§

const COUNT: usize = 15usize

source§

impl BitCount for u17

source§

const COUNT: usize = 17usize

source§

impl BitCount for u18

source§

const COUNT: usize = 18usize

source§

impl BitCount for u19

source§

const COUNT: usize = 19usize

source§

impl BitCount for u20

source§

const COUNT: usize = 20usize

source§

impl BitCount for u21

source§

const COUNT: usize = 21usize

source§

impl BitCount for u22

source§

const COUNT: usize = 22usize

source§

impl BitCount for u23

source§

const COUNT: usize = 23usize

source§

impl BitCount for u24

source§

const COUNT: usize = 24usize

source§

impl BitCount for u25

source§

const COUNT: usize = 25usize

source§

impl BitCount for u26

source§

const COUNT: usize = 26usize

source§

impl BitCount for u27

source§

const COUNT: usize = 27usize

source§

impl BitCount for u28

source§

const COUNT: usize = 28usize

source§

impl BitCount for u29

source§

const COUNT: usize = 29usize

source§

impl BitCount for u30

source§

const COUNT: usize = 30usize

source§

impl BitCount for u31

source§

const COUNT: usize = 31usize

source§

impl BitCount for u33

source§

const COUNT: usize = 33usize

source§

impl BitCount for u34

source§

const COUNT: usize = 34usize

source§

impl BitCount for u35

source§

const COUNT: usize = 35usize

source§

impl BitCount for u36

source§

const COUNT: usize = 36usize

source§

impl BitCount for u37

source§

const COUNT: usize = 37usize

source§

impl BitCount for u38

source§

const COUNT: usize = 38usize

source§

impl BitCount for u39

source§

const COUNT: usize = 39usize

source§

impl BitCount for u40

source§

const COUNT: usize = 40usize

source§

impl BitCount for u41

source§

const COUNT: usize = 41usize

source§

impl BitCount for u42

source§

const COUNT: usize = 42usize

source§

impl BitCount for u43

source§

const COUNT: usize = 43usize

source§

impl BitCount for u44

source§

const COUNT: usize = 44usize

source§

impl BitCount for u45

source§

const COUNT: usize = 45usize

source§

impl BitCount for u46

source§

const COUNT: usize = 46usize

source§

impl BitCount for u47

source§

const COUNT: usize = 47usize

source§

impl BitCount for u48

source§

const COUNT: usize = 48usize

source§

impl BitCount for u49

source§

const COUNT: usize = 49usize

source§

impl BitCount for u50

source§

const COUNT: usize = 50usize

source§

impl BitCount for u51

source§

const COUNT: usize = 51usize

source§

impl BitCount for u52

source§

const COUNT: usize = 52usize

source§

impl BitCount for u53

source§

const COUNT: usize = 53usize

source§

impl BitCount for u54

source§

const COUNT: usize = 54usize

source§

impl BitCount for u55

source§

const COUNT: usize = 55usize

source§

impl BitCount for u56

source§

const COUNT: usize = 56usize

source§

impl BitCount for u57

source§

const COUNT: usize = 57usize

source§

impl BitCount for u58

source§

const COUNT: usize = 58usize

source§

impl BitCount for u59

source§

const COUNT: usize = 59usize

source§

impl BitCount for u60

source§

const COUNT: usize = 60usize

source§

impl BitCount for u61

source§

const COUNT: usize = 61usize

source§

impl BitCount for u62

source§

const COUNT: usize = 62usize

source§

impl BitCount for u63

source§

const COUNT: usize = 63usize