pub fn hash_wset<T>(&mut self, data: &mut T)
        where T: WeightedSet<Object=D> + Iterator<Item=D> {
            while let Some(obj) = &data.next() {
                let weight = data.get_weight(&obj);
                self.hash_item(*obj, weight);
            }
    }
/// hash data when given by an iterable WeightedSet
hash data when given by an iterable WeightedSet
hash data when given by an iterable WeightedSet
pub fn hash_wset<T>(&mut self, data: &mut T)
        where T: WeightedSet<Object=D> + Iterator<Item=D> {
            while let Some(obj) = &data.next() {
                let weight = data.get_weight(&obj);
                self.hash_item(*obj, weight);
            }
    }
pub fn hash_wset < T > ( & mut self , data : & mut T ) where T : WeightedSet < Object = D > + Iterator < Item = D > { while let Some ( obj ) = & data . next ( ) { let weight = data . get_weight ( & obj ) ; self . hash_item ( * obj , weight ) ; } }
hash data when given by an iterable WeightedSet
hash data when given by an iterable WeightedSet
&mut self
data
&mut T