pub struct ConsumeEffectType {
pub key: Identifier,
expected_type_key: DowncastTypeKey,
persistent_reader: fn(&NbtCompound) -> Option<Box<dyn ErasedConsumeEffect>>,
persistent_writer: fn(&dyn ErasedConsumeEffect, &mut NbtCompound),
network_reader: fn(&mut Cursor<&[u8]>) -> Result<Box<dyn ErasedConsumeEffect>>,
network_writer: fn(&dyn ErasedConsumeEffect, &mut Vec<u8>) -> Result<()>,
fields_hasher: fn(&dyn ErasedConsumeEffect, &mut Vec<HashEntry>),
}Expand description
A registered consume-effect discriminator and its typed codecs.
Fields§
§key: Identifier§expected_type_key: DowncastTypeKey§persistent_reader: fn(&NbtCompound) -> Option<Box<dyn ErasedConsumeEffect>>§persistent_writer: fn(&dyn ErasedConsumeEffect, &mut NbtCompound)§network_reader: fn(&mut Cursor<&[u8]>) -> Result<Box<dyn ErasedConsumeEffect>>§network_writer: fn(&dyn ErasedConsumeEffect, &mut Vec<u8>) -> Result<()>§fields_hasher: fn(&dyn ErasedConsumeEffect, &mut Vec<HashEntry>)Implementations§
Source§impl ConsumeEffectType
impl ConsumeEffectType
pub const fn of<T: ConsumeEffectCodec>(key: Identifier) -> Self
Trait Implementations§
Source§impl Debug for ConsumeEffectType
impl Debug for ConsumeEffectType
impl Eq for ConsumeEffectType
Source§impl PartialEq for ConsumeEffectType
impl PartialEq for ConsumeEffectType
Auto Trait Implementations§
impl Freeze for ConsumeEffectType
impl RefUnwindSafe for ConsumeEffectType
impl Send for ConsumeEffectType
impl Sync for ConsumeEffectType
impl Unpin for ConsumeEffectType
impl UnsafeUnpin for ConsumeEffectType
impl UnwindSafe for ConsumeEffectType
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§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<>>