pub fn insert(&mut self, bit: usize) -> bool {
        if bit >= self.capacity() {
            self.grow(bit + 1);
        }
        let (word, mask) = word_mask(bit);
        let data = &mut self.vector[word];
        let value = *data;
        let new_value = value | mask;
        *data = new_value;
        new_value != value
    }
/// insert a new element to set
///
/// If value is inserted, return true,
/// if value already exists in set, return false.
///
/// Insert, remove and contains do not do bound check.
insert a new element to set
If value is inserted, return true,
if value already exists in set, return false.

Insert, remove and contains do not do bound check.
insert a new element to set If value is inserted return true if value already exists in set return false . Insert remove and contains do not do bound check .
pub fn insert(&mut self, bit: usize) -> bool {
        if bit >= self.capacity() {
            self.grow(bit + 1);
        }
        let (word, mask) = word_mask(bit);
        let data = &mut self.vector[word];
        let value = *data;
        let new_value = value | mask;
        *data = new_value;
        new_value != value
    }
pub fn insert ( & mut self , bit : usize ) -> bool { if bit >= self . capacity ( ) { self . grow ( bit + 1 ) ; } let ( word , mask ) = word_mask ( bit ) ; let data = & mut self . vector [ word ] ; let value = * data ; let new_value = value | mask ; * data = new_value ; new_value != value }
insert a new element to set
If value is inserted, return true,
if value already exists in set, return false.
insert a new element to set If value is inserted return true if value already exists in set return false .
&mut self
bit
usize
&mut self
bit
usize