/// Return a new, empty `HandleSet`, sized to hold handles from `arena`. pubfn for_arena(arena: &impl ArenaType<T>) -> Self { let len = arena.len(); Self {
len,
members: bit_set::BitSet::with_capacity(len),
as_keys: std::marker::PhantomData,
}
}
/// Remove all members from `self`. pubfn clear(&mutself) { self.members.clear();
}
/// Remove all members from `self`, and reserve space to hold handles from `arena`. pubfn clear_for_arena(&mutself, arena: &>impl ArenaType<T>) { self.members.clear(); self.members.reserve_len(arena.len());
}
/// Return an iterator over all handles that could be made members /// of this set. pubfn all_possible(&self) -> impl Iterator<Item = Handle<T>> { super::Range::full_range_from_size(self.len)
}
/// Add `handle` to the set. /// /// Return `true` if `handle` was not already present in the set. pubfn insert(&mutself, handle: Handle<T>) -> bool { self.members.insert(handle.index())
}
/// Remove `handle` from the set. /// /// Returns `true` if `handle` was present in the set. pubfn remove(&mutself, handle: Handle<T>) -> bool { self.members.remove(handle.index())
}
/// Add handles from `iter` to the set. pubfn insert_iter(&mutself, iter: impl IntoIterator<Item = Handle<T>>) { for handle in iter { self.insert(handle);
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.