pub fn take(&mut self) -> Vec<T> {
        let mut res : Vec<T> = self.all.drain().collect();
        res.sort();
        res.dedup();
        res
    }
/// clear and return a sorted list of unique elements.
clear and return a sorted list of unique elements.
clear and return a sorted list of unique elements .
pub fn take(&mut self) -> Vec<T> {
        let mut res : Vec<T> = self.all.drain().collect();
        res.sort();
        res.dedup();
        res
    }
pub fn take ( & mut self ) -> Vec < T > { let mut res : Vec < T > = self . all . drain ( ) . collect ( ) ; res . sort ( ) ; res . dedup ( ) ; res }
clear and return a sorted list of unique elements.
clear and return a sorted list of unique elements .
&mut self
&mut self