[][src]Trait savefile::Deserialize

pub trait Deserialize: WithSchema + Sized {
    fn deserialize(
        deserializer: &mut Deserializer<'_>
    ) -> Result<Self, SavefileError>; }

This trait must be implemented for all data structures you wish to be able to deserialize.

The most convenient way to implement this is to use #[macro_use] extern crate savefile-derive;

and the use #[derive(Deserialize)]

Required methods

fn deserialize(
    deserializer: &mut Deserializer<'_>
) -> Result<Self, SavefileError>

Deserialize and return an instance of Self from the given deserializer.

Loading content...

Implementations on Foreign Types

impl Deserialize for PathBuf[src]

impl Deserialize for String[src]

impl<T: Deserialize> Deserialize for Mutex<T>[src]

impl<T: Deserialize> Deserialize for Mutex<T>[src]

impl<T: Deserialize> Deserialize for RwLock<T>[src]

impl<K: Deserialize + Eq + Hash, V: Deserialize> Deserialize for HashMap<K, V>[src]

impl<K: Deserialize + Eq + Hash, V: Deserialize> Deserialize for IndexMap<K, V>[src]

impl<K: Deserialize + Eq + Hash> Deserialize for IndexSet<K>[src]

impl<T> Deserialize for PhantomData<T>[src]

impl<T: Deserialize> Deserialize for Option<T>[src]

impl Deserialize for BitVec[src]

impl<T: Deserialize + Ord> Deserialize for BinaryHeap<T>[src]

impl<T: Array> Deserialize for SmallVec<T> where
    T::Item: Deserialize
[src]

impl<T: Deserialize> Deserialize for Arc<[T]>[src]

impl<T: Deserialize> Deserialize for Vec<T>[src]

impl<T: Deserialize + ReprC> Deserialize for Vec<T>[src]

impl<T: Deserialize> Deserialize for VecDeque<T>[src]

impl<T: Deserialize, const N: usize> Deserialize for [T; N][src]

impl<T: Deserialize + ReprC, const N: usize> Deserialize for [T; N][src]

impl<T1: Deserialize> Deserialize for Range<T1>[src]

impl<T1: Deserialize, T2: Deserialize, T3: Deserialize> Deserialize for (T1, T2, T3)[src]

impl<T1: Deserialize, T2: Deserialize> Deserialize for (T1, T2)[src]

impl<T1: Deserialize> Deserialize for (T1,)[src]

impl<T: Array<Item = u8> + Copy> Deserialize for ArrayString<T>[src]

impl<V: Deserialize, T: Array<Item = V>> Deserialize for ArrayVec<T>[src]

impl<V: Deserialize + ReprC, T: Array<Item = V>> Deserialize for ArrayVec<T>[src]

impl<T: Deserialize> Deserialize for Box<T>[src]

impl<T: Deserialize> Deserialize for Rc<T>[src]

impl<T: Deserialize> Deserialize for Arc<T>[src]

impl<T: Deserialize> Deserialize for RefCell<T>[src]

impl<T: Deserialize> Deserialize for Cell<T>[src]

impl Deserialize for ()[src]

impl Deserialize for u8[src]

impl Deserialize for bool[src]

impl Deserialize for f32[src]

impl Deserialize for f64[src]

impl Deserialize for i8[src]

impl Deserialize for u16[src]

impl Deserialize for i16[src]

impl Deserialize for u32[src]

impl Deserialize for i32[src]

impl Deserialize for u64[src]

impl Deserialize for i64[src]

impl Deserialize for usize[src]

impl Deserialize for isize[src]

impl Deserialize for AtomicBool[src]

impl Deserialize for AtomicU8[src]

impl Deserialize for AtomicI8[src]

impl Deserialize for AtomicU16[src]

impl Deserialize for AtomicI16[src]

impl Deserialize for AtomicU32[src]

impl Deserialize for AtomicI32[src]

impl Deserialize for AtomicU64[src]

impl Deserialize for AtomicI64[src]

impl Deserialize for AtomicUsize[src]

impl Deserialize for AtomicIsize[src]

Loading content...

Implementors

impl Deserialize for Schema[src]

impl Deserialize for SchemaPrimitive[src]

impl Deserialize for Canary1[src]

impl Deserialize for Field[src]

impl Deserialize for SchemaArray[src]

impl Deserialize for SchemaEnum[src]

impl Deserialize for SchemaStruct[src]

impl Deserialize for Variant[src]

impl<T: WithSchema + Deserialize> Deserialize for Removed<T>[src]

Loading content...