pub struct CowVariantRegistry {
cow_variants_by_id: Vec<CowVariantRef>,
cow_variants_by_key: FxHashMap<Identifier, usize>,
allows_registering: bool,
}Fields§
§cow_variants_by_id: Vec<CowVariantRef>§cow_variants_by_key: FxHashMap<Identifier, usize>§allows_registering: boolImplementations§
Source§impl CowVariantRegistry
impl CowVariantRegistry
pub fn new() -> Self
pub fn select_spawn_variant( &self, biome: BiomeRef, random: &mut impl Random, ) -> Option<CowVariantRef>
Source§impl CowVariantRegistry
impl CowVariantRegistry
pub fn register(&mut self, entry: CowVariantRef) -> usize
pub fn iter(&self) -> impl Iterator<Item = (usize, CowVariantRef)> + '_
Trait Implementations§
Source§impl Default for CowVariantRegistry
impl Default for CowVariantRegistry
Source§impl RegistryExt for CowVariantRegistry
impl RegistryExt for CowVariantRegistry
type Entry = CowVariant
fn freeze(&mut self)
fn by_id(&self, id: usize) -> Option<&'static CowVariant>
fn by_key(&self, key: &Identifier) -> Option<&'static CowVariant>
fn id_from_key(&self, key: &Identifier) -> Option<usize>
fn len(&self) -> usize
fn is_empty(&self) -> bool
Auto Trait Implementations§
impl Freeze for CowVariantRegistry
impl RefUnwindSafe for CowVariantRegistry
impl Send for CowVariantRegistry
impl Sync for CowVariantRegistry
impl Unpin for CowVariantRegistry
impl UnsafeUnpin for CowVariantRegistry
impl UnwindSafe for CowVariantRegistry
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreWraps this value in an
Arc<SyncMutex<>>