Skip to main content

Serializer

Trait Serializer 

pub trait Serializer<S>
where S: Copy,
{ type Deserialized; // Required methods fn serializable_default(&self) -> Self::Deserialized; fn serialize( &self, value: &Self::Deserialized, ctx: SerializerCtx<'_, S>, path: &str, ) -> SerializedValue; fn deserialize( &self, value: &mut Self::Deserialized, ctx: SerializerCtx<'_, S>, path: &str, serialized: &SerializedValue, ); }

Required Associated Types§

Required Methods§

fn serializable_default(&self) -> Self::Deserialized

fn serialize( &self, value: &Self::Deserialized, ctx: SerializerCtx<'_, S>, path: &str, ) -> SerializedValue

fn deserialize( &self, value: &mut Self::Deserialized, ctx: SerializerCtx<'_, S>, path: &str, serialized: &SerializedValue, )

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

§

impl<'a, 'm, 'brw, T, F> Serializer<TransSerializerCtxState<'a>> for SingleDirectLoadTransSerializer<'m, 'brw, T, F>
where 'brw: 'm, T: 'static, F: 'm + Send + Sync + Fn(SerializerCtx<'_, TransSerializerCtxState<'_>>, &SerializedValue, &Path) -> Option<T>,

§

impl<'a, 'm, 'brw, T, F> Serializer<TransSerializerCtxState<'a>> for TransitiveLoadTransSerializer<'m, 'brw, T, F>
where 'brw: 'm, T: 'static, F: 'm + Send + Sync + Fn(SerializerCtx<'_, TransSerializerCtxState<'_>>, &SerializedValue, &Path) -> Option<T>,

§

impl<'a, 'm, T, S, F> Serializer<TransSerializerCtxState<'a>> for DirectAssetSaveTransSerializer<'m, T, S, F>
where T: 'static, S: 'static, F: Fn(SerializerCtx<'_, TransSerializerCtxState<'_>>, &T) -> S,

§

impl<'a, T, S> Serializer<S> for AssetInstantiateTransSerializer<'a, T>
where T: 'static, S: Copy,

§

impl<'brw, S> Serializer<S> for EntityTransSerializer<'brw>
where S: Copy,

§

impl<'m, 'brw, T, S> Serializer<S> for SingleLoadTransSerializer<'m, 'brw, T>
where 'brw: 'm, T: 'static, S: Copy,

§

impl<'m, T, S> Serializer<S> for AssetHandleLinkTransSerializer<'m, T>
where T: 'static, S: Copy,

§

impl<S, T> Serializer<S> for StandardSerializer<T>
where S: Copy, T: Serializable<S>,