Trait Serialize

Source
pub trait Serialize: WithSchema {
    // Required method
    fn serialize(
        &self,
        serializer: &mut Serializer<'_, impl Write>,
    ) -> Result<(), SavefileError>;
}
Expand description

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 use savefile-derive::Savefile;

and the use #[derive(Serialize)]

Required Methods§

Source

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

Serialize self into the given serializer.

In versions prior to 0.15, ‘Serializer’ did not accept a type parameter. It now requires a type parameter with the type of writer expected.

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 Serialize for &str

Source§

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

Source§

impl Serialize for bool

Source§

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

Source§

impl Serialize for char

Source§

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

Source§

impl Serialize for f32

Source§

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

Source§

impl Serialize for f64

Source§

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

Source§

impl Serialize for i8

Source§

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

Source§

impl Serialize for i16

Source§

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

Source§

impl Serialize for i32

Source§

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

Source§

impl Serialize for i64

Source§

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

Source§

impl Serialize for i128

Source§

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

Source§

impl Serialize for isize

Source§

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

Source§

impl Serialize for str

Source§

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

Source§

impl Serialize for u8

Source§

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

Source§

impl Serialize for u16

Source§

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

Source§

impl Serialize for u32

Source§

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

Source§

impl Serialize for u64

Source§

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

Source§

impl Serialize for u128

Source§

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

Source§

impl Serialize for ()

Source§

fn serialize( &self, _serializer: &mut Serializer<'_, impl Write>, ) -> Result<(), SavefileError>

Source§

impl Serialize for usize

Source§

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

Source§

impl Serialize for String

Source§

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

Source§

impl Serialize for Arc<str>

Source§

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

Source§

impl Serialize for AtomicBool

Source§

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

Source§

impl Serialize for AtomicI8

Source§

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

Source§

impl Serialize for AtomicI16

Source§

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

Source§

impl Serialize for AtomicI32

Source§

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

Source§

impl Serialize for AtomicI64

Source§

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

Source§

impl Serialize for AtomicIsize

Source§

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

Source§

impl Serialize for AtomicU8

Source§

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

Source§

impl Serialize for AtomicU16

Source§

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

Source§

impl Serialize for AtomicU32

Source§

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

Source§

impl Serialize for AtomicU64

Source§

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

Source§

impl Serialize for AtomicUsize

Source§

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

Source§

impl Serialize for Duration

Source§

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

Source§

impl Serialize for Error

Source§

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

Source§

impl Serialize for PathBuf

Source§

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

Source§

impl Serialize for SystemTime

Source§

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

Source§

impl Serialize for BitSet<u32>

Source§

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

Source§

impl Serialize for BitSet<u32>

Source§

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

Source§

impl Serialize for BitVec<u32>

Source§

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

Source§

impl Serialize for BitVec<u32>

Source§

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

Source§

impl<'a, T: 'a + Serialize + ToOwned + ?Sized> Serialize for Cow<'a, T>

Source§

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

Source§

impl<K: Serialize + 'static> Serialize for BTreeSet<K>

Source§

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

Source§

impl<K: Serialize + 'static, S: BuildHasher> Serialize for HashSet<K, S>

Source§

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

Source§

impl<K: Serialize + 'static, V: Serialize + 'static> Serialize for BTreeMap<K, V>

Source§

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

Source§

impl<K: Serialize + Eq + Hash + 'static, S: BuildHasher> Serialize for IndexSet<K, S>

Source§

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

Source§

impl<K: Serialize + Eq + Hash + 'static, V: Serialize + 'static, S: BuildHasher> Serialize for HashMap<K, V, S>

Source§

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

Source§

impl<K: Serialize + Eq + Hash + 'static, V: Serialize + 'static, S: BuildHasher> Serialize for IndexMap<K, V, S>

Source§

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

Source§

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

Source§

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

Source§

impl<T1: Serialize> Serialize for Range<T1>

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<T> Serialize for PhantomData<T>

Source§

fn serialize( &self, _serializer: &mut Serializer<'_, impl Write>, ) -> Result<(), SavefileError>

Source§

impl<T: Array + 'static> Serialize for SmallVec<T>
where T::Item: Serialize,

Source§

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

Source§

impl<T: Serialize + 'static> Serialize for Box<T>

Source§

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

Source§

impl<T: Serialize + 'static> Serialize for VecDeque<T>

Source§

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

Source§

impl<T: Serialize + 'static> Serialize for Rc<T>

Source§

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

Source§

impl<T: Serialize + 'static> Serialize for Arc<T>

Source§

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

Source§

impl<T: Serialize + Ord + 'static> Serialize for BinaryHeap<T>

Source§

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

Source§

impl<T: Serialize + Copy> Serialize for Cell<T>

Source§

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

Source§

impl<T: Serialize + Packed + 'static> Serialize for &[T]

Source§

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

Source§

impl<T: Serialize + Packed + 'static> Serialize for Box<[T]>

Source§

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

Source§

impl<T: Serialize + Packed + 'static> Serialize for Arc<[T]>

Source§

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

Source§

impl<T: Serialize + Packed + 'static> Serialize for Vec<T>

Source§

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

Source§

impl<T: Serialize + Packed + 'static, const N: usize> Serialize for [T; N]

Source§

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

Source§

impl<T: Serialize> Serialize for Option<T>

Source§

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

Source§

impl<T: Serialize> Serialize for RefCell<T>

Source§

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

Source§

impl<T: Serialize> Serialize for Mutex<T>

Source§

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

Source§

impl<T: Serialize> Serialize for Mutex<T>

Source§

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

Source§

impl<T: Serialize> Serialize for RwLock<T>

Source§

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

Source§

impl<T: Serialize, R: Serialize> Serialize for Result<T, R>

Source§

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

Source§

impl<V: Serialize + Packed, const C: usize> Serialize for ArrayVec<V, C>

Source§

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

Source§

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

Source§

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

Implementors§