pub struct Removed<T> { /* private fields */ }Expand description
Helper struct which represents a field which has been removed In contrast to AbiRemoved, this type only supports deserialization. It is thus not recommended for use when SavefileAbi is to be used, and forward compatibility is desired.
The difference is that Removed does not require T to implement Default, or any other factory trait, since we never need to serialize dummy values of Removed (we never serialize using a schema where a field i Removed).
Implementations§
Trait Implementations§
source§impl<T: WithSchema + Deserialize> Deserialize for Removed<T>
impl<T: WithSchema + Deserialize> Deserialize for Removed<T>
source§fn deserialize(
deserializer: &mut Deserializer<'_, impl Read>,
) -> Result<Self, SavefileError>
fn deserialize( deserializer: &mut Deserializer<'_, impl Read>, ) -> Result<Self, SavefileError>
source§impl<T: Introspect> Introspect for Removed<T>
impl<T: Introspect> Introspect for Removed<T>
source§fn introspect_value(&self) -> String
fn introspect_value(&self) -> String
source§fn introspect_child(
&self,
_index: usize,
) -> Option<Box<dyn IntrospectItem<'_> + '_>>
fn introspect_child( &self, _index: usize, ) -> Option<Box<dyn IntrospectItem<'_> + '_>>
source§fn introspect_len(&self) -> usize
fn introspect_len(&self) -> usize
source§impl<T: Ord> Ord for Removed<T>
impl<T: Ord> Ord for Removed<T>
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl<T> Packed for Removed<T>
impl<T> Packed for Removed<T>
source§unsafe fn repr_c_optimization_safe(_version: u32) -> IsPacked
unsafe fn repr_c_optimization_safe(_version: u32) -> IsPacked
source§impl<T: PartialEq> PartialEq for Removed<T>
impl<T: PartialEq> PartialEq for Removed<T>
source§impl<T: PartialOrd> PartialOrd for Removed<T>
impl<T: PartialOrd> PartialOrd for Removed<T>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self and other) and is used by the <=
operator. Read moresource§impl<T: WithSchema> Serialize for Removed<T>
impl<T: WithSchema> Serialize for Removed<T>
source§fn serialize(
&self,
_serializer: &mut Serializer<'_, impl Write>,
) -> Result<(), SavefileError>
fn serialize( &self, _serializer: &mut Serializer<'_, impl Write>, ) -> Result<(), SavefileError>
source§impl<T: WithSchema> WithSchema for Removed<T>
impl<T: WithSchema> WithSchema for Removed<T>
impl<T: Copy> Copy for Removed<T>
impl<T: Eq> Eq for Removed<T>
impl<T> Send for Removed<T>
Removed is a zero-sized type. It contains a PhantomData<*const T>, which means it doesn’t implement Send or Sync per default. However, implementing these is actually safe, so implement it manually.
impl<T> StructuralPartialEq for Removed<T>
impl<T> Sync for Removed<T>
Removed is a zero-sized type. It contains a PhantomData<*const T>, which means it doesn’t implement Send or Sync per default. However, implementing these is actually safe, so implement it manually.
Auto Trait Implementations§
impl<T> Freeze for Removed<T>
impl<T> RefUnwindSafe for Removed<T>where
T: RefUnwindSafe,
impl<T> Unpin for Removed<T>
impl<T> UnwindSafe for Removed<T>where
T: RefUnwindSafe,
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.