pub fn insert(&mut self, value: T) -> bool
    where
        T: Ord,
    {
        self.map.insert(value, ()).is_none()
    }
Retains only the elements specified by the predicate.

In other words, remove all elements `e` such that `f(&e)` returns `false`.

# Examples

```
use std::collections::BTreeSet;

let xs = [1, 2, 3, 4, 5, 6];
let mut set: BTreeSet<i32> = xs.iter().cloned().collect();
// Keep only the even numbers.
set.retain(|&k| k % 2 == 0);
assert!(set.iter().e
benchmarks/haystacks/code/rust-library.rs