[][src]Trait savefile::Serialize

pub trait Serialize: WithSchema {
    fn serialize(
        &self,
        serializer: &mut Serializer
    ) -> Result<(), SavefileError>; }

This trait must be implemented for all data structures you wish to be able to serialize. To actually serialize data: create a Serializer, then call serialize on your data to save, giving the Serializer as an argument.

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

and the use #[derive(Serialize)]

Required methods

fn serialize(&self, serializer: &mut Serializer) -> Result<(), SavefileError>

Serialize self into the given serializer.

Loading content...

Implementations on Foreign Types

impl Serialize for String[src]

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

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

impl<K: Serialize + Eq + Hash, V: Serialize, S: BuildHasher> Serialize for HashMap<K, V, S>[src]

impl<K: Serialize + Eq + Hash, V: Serialize, S: BuildHasher> Serialize for IndexMap<K, V, S>[src]

impl<K: Serialize + Eq + Hash, S: BuildHasher> Serialize for IndexSet<K, S>[src]

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

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

impl Serialize for BitVec[src]

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

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

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

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

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

impl<T1> Serialize for [T1; 0][src]

impl<T1: Serialize> Serialize for [T1; 1][src]

impl<T1: Serialize> Serialize for [T1; 2][src]

impl<T1: Serialize> Serialize for [T1; 3][src]

impl<T1: Serialize> Serialize for [T1; 4][src]

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

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

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

impl<T: Array<Item = u8>> Serialize for ArrayString<T>[src]

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

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

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

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

impl<T: Serialize + Copy> Serialize for Cell<T>[src]

impl Serialize for ()[src]

impl Serialize for u8[src]

impl Serialize for bool[src]

impl Serialize for f32[src]

impl Serialize for f64[src]

impl Serialize for i8[src]

impl Serialize for u16[src]

impl Serialize for i16[src]

impl Serialize for u32[src]

impl Serialize for i32[src]

impl Serialize for u64[src]

impl Serialize for i64[src]

impl Serialize for usize[src]

impl Serialize for isize[src]

impl Serialize for AtomicBool[src]

impl Serialize for AtomicU8[src]

impl Serialize for AtomicI8[src]

impl Serialize for AtomicU16[src]

impl Serialize for AtomicI16[src]

impl Serialize for AtomicU32[src]

impl Serialize for AtomicI32[src]

impl Serialize for AtomicU64[src]

impl Serialize for AtomicI64[src]

impl Serialize for AtomicUsize[src]

impl Serialize for AtomicIsize[src]

Loading content...

Implementors

impl Serialize for Schema[src]

impl Serialize for SchemaPrimitive[src]

impl Serialize for Canary1[src]

impl Serialize for Field[src]

impl Serialize for SchemaEnum[src]

impl Serialize for SchemaStruct[src]

impl Serialize for Variant[src]

impl<T: WithSchema> Serialize for Removed<T>[src]

Loading content...