#![allow(unused_variables)] #![feature(btree_set_entry)] fn main() { use std::collections::btree_set::{Entry, BTreeSet}; let mut set = BTreeSet::<&str>::new(); let entry_v = match set.entry("a") { Entry::Vacant(view) => view, Entry::Occupied(_) => unreachable!(), }; entry_v.insert(); assert!(set.contains("a") && set.len() == 1); match set.entry("b") { Entry::Vacant(view) => view.insert(), Entry::Occupied(_) => unreachable!(), } assert!(set.contains("b") && set.len() == 2); }