pub trait DeserializeDyn<T: Pointee + ?Sized> {
// Required methods
unsafe fn deserialize_dyn(
&self,
deserializer: &mut dyn DynDeserializer,
alloc: &mut dyn FnMut(Layout) -> *mut u8,
) -> Result<*mut (), DynError>;
fn deserialize_dyn_metadata(
&self,
deserializer: &mut dyn DynDeserializer,
) -> Result<T::Metadata, DynError>;
}Expand description
A trait object that can be deserialized.
See SerializeDyn for more information.
Required Methods§
Sourceunsafe fn deserialize_dyn(
&self,
deserializer: &mut dyn DynDeserializer,
alloc: &mut dyn FnMut(Layout) -> *mut u8,
) -> Result<*mut (), DynError>
unsafe fn deserialize_dyn( &self, deserializer: &mut dyn DynDeserializer, alloc: &mut dyn FnMut(Layout) -> *mut u8, ) -> Result<*mut (), DynError>
Deserializes the given value as a trait object.
§Safety
The memory returned must be properly deallocated.
Sourcefn deserialize_dyn_metadata(
&self,
deserializer: &mut dyn DynDeserializer,
) -> Result<T::Metadata, DynError>
fn deserialize_dyn_metadata( &self, deserializer: &mut dyn DynDeserializer, ) -> Result<T::Metadata, DynError>
Returns the metadata for the deserialized version of this value.