1pub(crate) type BitContainer = usize; pub const BIT_MASK_SIZE: u8 = CTNR_SIZE;
5
6#[cfg(target_pointer_width = "64")]
7pub const BIT_MASK: [BitContainer; (BIT_MASK_SIZE + 1) as usize] = [
8 0,
9 1,
10 3,
11 7,
12 0xF,
13 0x1F,
14 0x3F,
15 0x7F,
16 0xFF,
17 0x1FF,
18 0x3FF,
19 0x7FF,
20 0xFFF,
21 0x1FFF,
22 0x3FFF,
23 0x7FFF,
24 0xFFFF,
25 0x1FFFF,
26 0x3FFFF,
27 0x7FFFF,
28 0xFFFFF,
29 0x1FFFFF,
30 0x3FFFFF,
31 0x7FFFFF,
32 0xFFFFFF,
33 0x1FFFFFF,
34 0x3FFFFFF,
35 0x7FFFFFF,
36 0xFFFFFFF,
37 0x1FFFFFFF,
38 0x3FFFFFFF,
39 0x7FFFFFFF,
40 0xFFFFFFFF,
41 0x1FFFFFFFF,
42 0x3FFFFFFFF,
43 0x7FFFFFFFF,
44 0xFFFFFFFFF,
45 0x1FFFFFFFFF,
46 0x3FFFFFFFFF,
47 0x7FFFFFFFFF,
48 0xFFFFFFFFFF,
49 0x1FFFFFFFFFF,
50 0x3FFFFFFFFFF,
51 0x7FFFFFFFFFF,
52 0xFFFFFFFFFFF,
53 0x1FFFFFFFFFFF,
54 0x3FFFFFFFFFFF,
55 0x7FFFFFFFFFFF,
56 0xFFFFFFFFFFFF,
57 0x1FFFFFFFFFFFF,
58 0x3FFFFFFFFFFFF,
59 0x7FFFFFFFFFFFF,
60 0xFFFFFFFFFFFFF,
61 0x1FFFFFFFFFFFFF,
62 0x3FFFFFFFFFFFFF,
63 0x7FFFFFFFFFFFFF,
64 0xFFFFFFFFFFFFFF,
65 0x1FFFFFFFFFFFFFF,
66 0x3FFFFFFFFFFFFFF,
67 0x7FFFFFFFFFFFFFF,
68 0xFFFFFFFFFFFFFFF,
69 0x1FFFFFFFFFFFFFFF,
70 0x3FFFFFFFFFFFFFFF,
71 0x7FFFFFFFFFFFFFFF,
72 0xFFFFFFFFFFFFFFFF,
73];
74#[cfg(target_pointer_width = "32")]
75pub const BIT_MASK: [BitContainer; (BIT_MASK_SIZE + 1) as usize] = [
76 0, 1, 3, 7, 0xF, 0x1F, 0x3F, 0x7F, 0xFF, 0x1FF, 0x3FF, 0x7FF, 0xFFF, 0x1FFF, 0x3FFF, 0x7FFF,
77 0xFFFF, 0x1FFFF, 0x3FFFF, 0x7FFFF, 0xFFFFF, 0x1FFFFF, 0x3FFFFF, 0x7FFFFF, 0xFFFFFF, 0x1FFFFFF,
78 0x3FFFFFF, 0x7FFFFFF, 0xFFFFFFF, 0x1FFFFFFF, 0x3FFFFFFF, 0x7FFFFFFF, 0xFFFFFFFF,
79];
80
81pub const CTNR_SIZE: u8 = std::mem::size_of::<BitContainer>() as u8 * 8;
83pub const CTNR_BYTES_SIZE: usize = std::mem::size_of::<BitContainer>();