fn slice(&mut self, element: u32) {
        if element == 0 {
            self.chunks = vec![0];
            return;
        }


        let mut chunk_slice: Vec<u32> = Vec::new();
        let bit_mask = 0b11111;
        let base: u32 = 2;

        let mut i: u32 = 0;
        while base.pow(i) <= element {
            let group = (element >> i) & bit_mask;
            chunk_slice.push(group);
            i += 5;
        }

        self.chunks = chunk_slice;
    }
/// splits elements into group of 5 bits
splits elements into group of 5 bits
splits elements into group of 5 bits
fn slice(&mut self, element: u32) {
        if element == 0 {
            self.chunks = vec![0];
            return;
        }
        let mut chunk_slice: Vec<u32> = Vec::new();
        let bit_mask = 0b11111;
        let base: u32 = 2;
        let mut i: u32 = 0;
        while base.pow(i) <= element {
            let group = (element >> i) & bit_mask;
            chunk_slice.push(group);
            i += 5;
        }
        self.chunks = chunk_slice;
    }
fn slice ( & mut self , element : u32 ) { if element == 0 { self . chunks = vec ! [ 0 ] ; return ; } let mut chunk_slice : Vec < u32 > = Vec :: new ( ) ; let bit_mask = 0b11111 ; let base : u32 = 2 ; let mut i : u32 = 0 ; while base . pow ( i ) <= element { let group = ( element >> i ) & bit_mask ; chunk_slice . push ( group ) ; i += 5 ; } self . chunks = chunk_slice ; }
splits elements into group of 5 bits
splits elements into group of 5 bits
&mut self
element
u32
&mut self
element
u32