density_rs/io/
read_signature.rs

1#[derive(Debug)]
2pub struct ReadSignature {
3    pub(crate) value: u64,
4}
5
6impl ReadSignature {
7    pub fn new(value: u64) -> Self {
8        ReadSignature { value }
9    }
10
11    #[inline(always)]
12    pub fn read_bits(&mut self, mask: u64, n: u8) -> u64 {
13        let value = self.value & mask;
14        self.value >>= n;
15        value
16    }
17}