Trait savefile::Deserialize

source ·
pub trait Deserialize: WithSchema + Sized {
    // Required method
    fn deserialize(
        deserializer: &mut Deserializer<'_>
    ) -> Result<Self, SavefileError>;
}
Expand description

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§

source

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

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

Implementations on Foreign Types§

source§

impl<T: Deserialize> Deserialize for Box<T>

source§

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

source§

impl Deserialize for i128

source§

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

source§

impl Deserialize for AtomicIsize

source§

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

source§

impl Deserialize for ()

source§

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

source§

impl Deserialize for BitSet<u32>

source§

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

source§

impl<T: Deserialize> Deserialize for Cell<T>

source§

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

source§

impl<'a, T: 'a + WithSchema + ToOwned + ?Sized> Deserialize for Cow<'a, T>where T::Owned: Deserialize,

source§

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

source§

impl Deserialize for Arc<str>

source§

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

source§

impl<T> Deserialize for PhantomData<T>

source§

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

source§

impl Deserialize for AtomicI32

source§

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

source§

impl<T1: Deserialize> Deserialize for (T1,)

source§

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

source§

impl Deserialize for u64

source§

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

source§

impl Deserialize for isize

source§

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

source§

impl<T: Deserialize> Deserialize for RwLock<T>

source§

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

source§

impl<T: Deserialize + Ord> Deserialize for BinaryHeap<T>

source§

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

source§

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

source§

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

source§

impl Deserialize for AtomicI16

source§

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

source§

impl Deserialize for i16

source§

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

source§

impl Deserialize for AtomicI8

source§

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

source§

impl Deserialize for u128

source§

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

source§

impl<K: Deserialize + Eq + Hash, S: BuildHasher + Default> Deserialize for HashSet<K, S>

source§

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

source§

impl<V: Deserialize + ReprC, const C: usize> Deserialize for ArrayVec<V, C>

source§

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

source§

impl<T1: Deserialize> Deserialize for Range<T1>

source§

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

source§

impl Deserialize for f32

source§

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

source§

impl Deserialize for AtomicU8

source§

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

source§

impl Deserialize for PathBuf

source§

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

source§

impl Deserialize for u8

source§

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

source§

impl Deserialize for u32

source§

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

source§

impl Deserialize for String

source§

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

source§

impl<T: Deserialize> Deserialize for Arc<T>

source§

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

source§

impl Deserialize for AtomicUsize

source§

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

source§

impl Deserialize for AtomicI64

source§

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

source§

impl Deserialize for u16

source§

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

source§

impl<T: Deserialize> Deserialize for Mutex<T>

source§

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

source§

impl<T: Deserialize + ReprC> Deserialize for Arc<[T]>

source§

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

source§

impl Deserialize for i32

source§

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

source§

impl Deserialize for AtomicU16

source§

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

source§

impl Deserialize for i64

source§

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

source§

impl<T: Deserialize> Deserialize for VecDeque<T>

source§

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

source§

impl Deserialize for AtomicU64

source§

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

source§

impl<T: Deserialize> Deserialize for RefCell<T>

source§

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

source§

impl<K: Deserialize + Ord, V: Deserialize> Deserialize for BTreeMap<K, V>

source§

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

source§

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

source§

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

source§

impl<T: Deserialize> Deserialize for Rc<T>

source§

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

source§

impl Deserialize for i8

source§

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

source§

impl Deserialize for usize

source§

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

source§

impl<T: Deserialize> Deserialize for Mutex<T>

source§

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

source§

impl<const C: usize> Deserialize for ArrayString<C>

source§

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

source§

impl<K: Deserialize + Eq + Hash> Deserialize for IndexSet<K>

source§

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

source§

impl<K: Deserialize + Eq + Hash, V: Deserialize, S: BuildHasher + Default> Deserialize for HashMap<K, V, S>

source§

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

source§

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

source§

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

source§

impl Deserialize for AtomicBool

source§

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

source§

impl Deserialize for AtomicU32

source§

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

source§

impl Deserialize for char

source§

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

source§

impl Deserialize for bool

source§

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

source§

impl<T: Deserialize> Deserialize for Option<T>

source§

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

source§

impl<T1: Deserialize, T2: Deserialize> Deserialize for (T1, T2)

source§

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

source§

impl<T: Deserialize + ReprC> Deserialize for Vec<T>

source§

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

source§

impl Deserialize for f64

source§

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

source§

impl<T: Array> Deserialize for SmallVec<T>where T::Item: Deserialize,

source§

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

source§

impl Deserialize for BitVec<u32>

source§

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

source§

impl<V: Deserialize, const C: usize> Deserialize for ArrayVec<V, C>

source§

default fn deserialize( deserializer: &mut Deserializer<'_> ) -> Result<ArrayVec<V, C>, SavefileError>

Implementors§