Serializable

Trait Serializable 

Source
pub trait Serializable<P: Project>: Sized {
    // Required methods
    fn serialize(&self, context: &SerializationContext<'_, P>) -> Value;
    fn deserialize(
        data: &Value,
        context: &mut DeserializationContext<'_, P>,
    ) -> Option<Self>;
}

Required Methods§

Source

fn serialize(&self, context: &SerializationContext<'_, P>) -> Value

Source

fn deserialize( data: &Value, context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<P: Project> Serializable<P> for f32

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for f64

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for i8

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for i16

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for i32

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for i64

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for isize

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for u8

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for u16

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for u32

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for u64

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for ()

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

fn deserialize( _data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

impl<P: Project> Serializable<P> for usize

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project> Serializable<P> for String

Source§

fn deserialize( data: &Value, _context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, _context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project, T: Serializable<P> + Eq + Hash> Serializable<P> for HashSet<T>

Source§

fn deserialize( data: &Value, context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, context: &SerializationContext<'_, P>) -> Value

Source§

impl<P: Project, T: Serializable<P>> Serializable<P> for Vec<T>

Source§

fn deserialize( data: &Value, context: &mut DeserializationContext<'_, P>, ) -> Option<Self>

Source§

fn serialize(&self, context: &SerializationContext<'_, P>) -> Value

Implementors§