serde::ser

Trait Serialize

Source
pub trait Serialize {
    // Required method
    fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
       where S: Serializer;
}
Expand description

A data structure that can be serialized into any data format supported by Serde.

Serde provides Serialize implementations for many Rust primitive and standard library types. The complete list is here. All of these can be serialized using Serde out of the box.

Additionally, Serde provides a procedural macro called serde_derive to automatically generate Serialize implementations for structs and enums in your program. See the derive section of the manual for how to use this.

In rare cases it may be necessary to implement Serialize manually for some type in your program. See the Implementing Serialize section of the manual for more about this.

Third-party crates may provide Serialize implementations for types that they expose. For example the linked-hash-map crate provides a LinkedHashMap<K, V> type that is serializable by Serde because the crate provides an implementation of Serialize for it.

Required Methods§

Source

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Serialize this value into the given Serde serializer.

See the Implementing Serialize section of the manual for more information about how to implement this method.

use serde::ser::{Serialize, SerializeStruct, Serializer};

struct Person {
    name: String,
    age: u8,
    phones: Vec<String>,
}

// This is what #[derive(Serialize)] would generate.
impl Serialize for Person {
    fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
    where
        S: Serializer,
    {
        let mut s = serializer.serialize_struct("Person", 3)?;
        s.serialize_field("name", &self.name)?;
        s.serialize_field("age", &self.age)?;
        s.serialize_field("phones", &self.phones)?;
        s.end()
    }
}

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 bool

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for char

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for f32

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for f64

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for i8

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for i16

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for i32

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for i64

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for i128

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for isize

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for str

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for u8

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for u16

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for u32

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for u64

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for u128

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for ()

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl Serialize for usize

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<'a, T> Serialize for &'a T
where T: ?Sized + Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<'a, T> Serialize for &'a mut T
where T: ?Sized + Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

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

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

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

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

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

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

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

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5> Serialize for (T0, T1, T2, T3, T4, T5)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5, T6> Serialize for (T0, T1, T2, T3, T4, T5, T6)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize, T6: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7> Serialize for (T0, T1, T2, T3, T4, T5, T6, T7)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize, T6: Serialize, T7: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> Serialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize, T6: Serialize, T7: Serialize, T8: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> Serialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize, T6: Serialize, T7: Serialize, T8: Serialize, T9: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> Serialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize, T6: Serialize, T7: Serialize, T8: Serialize, T9: Serialize, T10: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Serialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize, T6: Serialize, T7: Serialize, T8: Serialize, T9: Serialize, T10: Serialize, T11: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Serialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize, T6: Serialize, T7: Serialize, T8: Serialize, T9: Serialize, T10: Serialize, T11: Serialize, T12: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> Serialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize, T6: Serialize, T7: Serialize, T8: Serialize, T9: Serialize, T10: Serialize, T11: Serialize, T12: Serialize, T13: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> Serialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize, T6: Serialize, T7: Serialize, T8: Serialize, T9: Serialize, T10: Serialize, T11: Serialize, T12: Serialize, T13: Serialize, T14: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Serialize for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
where T0: Serialize, T1: Serialize, T2: Serialize, T3: Serialize, T4: Serialize, T5: Serialize, T6: Serialize, T7: Serialize, T8: Serialize, T9: Serialize, T10: Serialize, T11: Serialize, T12: Serialize, T13: Serialize, T14: Serialize, T15: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 0]

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 1]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 2]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 3]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 4]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 5]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 6]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 7]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 8]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 9]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 10]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 11]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 12]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 13]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 14]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 15]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 16]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 17]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 18]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 19]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 20]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 21]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 22]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 23]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 24]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 25]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 26]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 27]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 28]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 29]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 30]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 31]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T; 32]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for [T]
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<T> Serialize for (T,)
where T: Serialize,

Source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Implementors§

Source§

impl Serialize for IpAddr

Source§

impl Serialize for SocketAddr

Source§

impl Serialize for Ipv4Addr

Source§

impl Serialize for Ipv6Addr

Source§

impl Serialize for SocketAddrV4

Source§

impl Serialize for SocketAddrV6

Source§

impl Serialize for AtomicBool

Source§

impl Serialize for AtomicI8

Source§

impl Serialize for AtomicI16

Source§

impl Serialize for AtomicI32

Source§

impl Serialize for AtomicI64

Source§

impl Serialize for AtomicIsize

Source§

impl Serialize for AtomicU8

Source§

impl Serialize for AtomicU16

Source§

impl Serialize for AtomicU32

Source§

impl Serialize for AtomicU64

Source§

impl Serialize for AtomicUsize

Source§

impl Serialize for CStr

Source§

impl Serialize for CString

Source§

impl Serialize for Duration

Source§

impl Serialize for OsStr

Source§

impl Serialize for OsString

Source§

impl Serialize for Path

Source§

impl Serialize for PathBuf

Source§

impl Serialize for String

Source§

impl Serialize for SystemTime

Source§

impl Serialize for NonZeroI8

Source§

impl Serialize for NonZeroI16

Source§

impl Serialize for NonZeroI32

Source§

impl Serialize for NonZeroI64

Source§

impl Serialize for NonZeroI128

Source§

impl Serialize for NonZeroIsize

Source§

impl Serialize for NonZeroU8

Source§

impl Serialize for NonZeroU16

Source§

impl Serialize for NonZeroU32

Source§

impl Serialize for NonZeroU64

Source§

impl Serialize for NonZeroU128

Source§

impl Serialize for NonZeroUsize

Source§

impl<'a> Serialize for Arguments<'a>

Source§

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

Source§

impl<Idx> Serialize for Range<Idx>
where Idx: Serialize,

Source§

impl<Idx> Serialize for RangeFrom<Idx>
where Idx: Serialize,

Source§

impl<Idx> Serialize for RangeInclusive<Idx>
where Idx: Serialize,

Source§

impl<Idx> Serialize for RangeTo<Idx>
where Idx: Serialize,

Source§

impl<K, V> Serialize for BTreeMap<K, V>
where K: Serialize, V: Serialize,

Source§

impl<K, V, H> Serialize for HashMap<K, V, H>
where K: Serialize, V: Serialize,

Source§

impl<T> Serialize for Bound<T>
where T: Serialize,

Source§

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

Source§

impl<T> Serialize for Arc<T>
where T: ?Sized + Serialize,

This impl requires the "rc" Cargo feature of Serde.

Serializing a data structure containing Arc will serialize a copy of the contents of the Arc each time the Arc is referenced within the data structure. Serialization will not attempt to deduplicate these repeated data.

Source§

impl<T> Serialize for ArcWeak<T>
where T: ?Sized + Serialize,

This impl requires the "rc" Cargo feature of Serde.

Source§

impl<T> Serialize for BTreeSet<T>
where T: Serialize,

Source§

impl<T> Serialize for BinaryHeap<T>
where T: Serialize,

Source§

impl<T> Serialize for Box<T>
where T: ?Sized + Serialize,

Source§

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

Source§

impl<T> Serialize for LinkedList<T>
where T: Serialize,

Source§

impl<T> Serialize for Mutex<T>
where T: ?Sized + Serialize,

Source§

impl<T> Serialize for PhantomData<T>
where T: ?Sized,

Source§

impl<T> Serialize for Rc<T>
where T: ?Sized + Serialize,

This impl requires the "rc" Cargo feature of Serde.

Serializing a data structure containing Rc will serialize a copy of the contents of the Rc each time the Rc is referenced within the data structure. Serialization will not attempt to deduplicate these repeated data.

Source§

impl<T> Serialize for RcWeak<T>
where T: ?Sized + Serialize,

This impl requires the "rc" Cargo feature of Serde.

Source§

impl<T> Serialize for RefCell<T>
where T: ?Sized + Serialize,

Source§

impl<T> Serialize for Reverse<T>
where T: Serialize,

Source§

impl<T> Serialize for RwLock<T>
where T: ?Sized + Serialize,

Source§

impl<T> Serialize for Saturating<T>
where T: Serialize,

Source§

impl<T> Serialize for Vec<T>
where T: Serialize,

Source§

impl<T> Serialize for VecDeque<T>
where T: Serialize,

Source§

impl<T> Serialize for Wrapping<T>
where T: Serialize,

Source§

impl<T, E> Serialize for Result<T, E>
where T: Serialize, E: Serialize,

Source§

impl<T, H> Serialize for HashSet<T, H>
where T: Serialize,

impl<T, A> Serialize for Box<T, A>
where T: Serialize, A: Allocator,

impl<T, A> Serialize for Vec<T, A>
where T: Serialize, A: Allocator,

impl Serialize for Au

impl<T: Serialize, const CAP: usize> Serialize for ArrayVec<T, CAP>

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

impl Serialize for BlobId

impl Serialize for Epoch

impl Serialize for GlType

impl<T> Serialize for TruncatedDebug<T>
where T: Serialize,

impl Serialize for Month

impl<Tz: TimeZone> Serialize for DateTime<Tz>

impl Serialize for Policy

impl<const MIN: i128, const MAX: i128> Serialize for OptionRangedI128<MIN, MAX>

impl<const MIN: i128, const MAX: i128> Serialize for RangedI128<MIN, MAX>

impl<const MIN: i16, const MAX: i16> Serialize for OptionRangedI16<MIN, MAX>

impl<const MIN: i16, const MAX: i16> Serialize for RangedI16<MIN, MAX>

impl<const MIN: i32, const MAX: i32> Serialize for OptionRangedI32<MIN, MAX>

impl<const MIN: i32, const MAX: i32> Serialize for RangedI32<MIN, MAX>

impl<const MIN: i64, const MAX: i64> Serialize for OptionRangedI64<MIN, MAX>

impl<const MIN: i64, const MAX: i64> Serialize for RangedI64<MIN, MAX>

impl<const MIN: i8, const MAX: i8> Serialize for OptionRangedI8<MIN, MAX>

impl<const MIN: i8, const MAX: i8> Serialize for RangedI8<MIN, MAX>

impl<const MIN: isize, const MAX: isize> Serialize for OptionRangedIsize<MIN, MAX>

impl<const MIN: isize, const MAX: isize> Serialize for RangedIsize<MIN, MAX>

impl<const MIN: u128, const MAX: u128> Serialize for OptionRangedU128<MIN, MAX>

impl<const MIN: u128, const MAX: u128> Serialize for RangedU128<MIN, MAX>

impl<const MIN: u16, const MAX: u16> Serialize for OptionRangedU16<MIN, MAX>

impl<const MIN: u16, const MAX: u16> Serialize for RangedU16<MIN, MAX>

impl<const MIN: u32, const MAX: u32> Serialize for OptionRangedU32<MIN, MAX>

impl<const MIN: u32, const MAX: u32> Serialize for RangedU32<MIN, MAX>

impl<const MIN: u64, const MAX: u64> Serialize for OptionRangedU64<MIN, MAX>

impl<const MIN: u64, const MAX: u64> Serialize for RangedU64<MIN, MAX>

impl<const MIN: u8, const MAX: u8> Serialize for OptionRangedU8<MIN, MAX>

impl<const MIN: u8, const MAX: u8> Serialize for RangedU8<MIN, MAX>

impl<const MIN: usize, const MAX: usize> Serialize for OptionRangedUsize<MIN, MAX>

impl<const MIN: usize, const MAX: usize> Serialize for RangedUsize<MIN, MAX>

impl Serialize for Error

impl Serialize for Source

impl Serialize for IsUsed

impl Serialize for Header

impl Serialize for Types

impl Serialize for WhyMsg

impl Serialize for Method

impl Serialize for Attrs

impl Serialize for Docs

impl Serialize for Enum

impl Serialize for File

impl Serialize for Ident

impl Serialize for Method

impl Serialize for Module

impl Serialize for Param

impl Serialize for Path

impl Serialize for Struct

impl Serialize for Cursor

impl Serialize for Theme

impl Serialize for Item

impl Serialize for Shelf

impl Serialize for Bucket

impl Serialize for Shelf

impl<T> Serialize for Angle<T>
where T: Serialize,

impl<T, Src, Dst> Serialize for RigidTransform3D<T, Src, Dst>
where T: Serialize, Src: Serialize, Dst: Serialize,

impl<T, Src, Dst> Serialize for Rotation2D<T, Src, Dst>
where T: Serialize,

impl<T, Src, Dst> Serialize for Rotation3D<T, Src, Dst>
where T: Serialize,

impl<T, Src, Dst> Serialize for Scale<T, Src, Dst>
where T: Serialize,

impl<T, Src, Dst> Serialize for Transform2D<T, Src, Dst>
where T: Serialize,

impl<T, Src, Dst> Serialize for Transform3D<T, Src, Dst>
where T: Serialize,

impl<T, Src, Dst> Serialize for Translation2D<T, Src, Dst>
where T: Serialize,

impl<T, Src, Dst> Serialize for Translation3D<T, Src, Dst>
where T: Serialize,

impl<T, U> Serialize for Box2D<T, U>
where T: Serialize,

impl<T, U> Serialize for Box3D<T, U>
where T: Serialize,

impl<T, U> Serialize for HomogeneousVector<T, U>
where T: Serialize,

impl<T, U> Serialize for Length<T, U>
where T: Serialize,

impl<T, U> Serialize for Point2D<T, U>
where T: Serialize,

impl<T, U> Serialize for Point3D<T, U>
where T: Serialize,

impl<T, U> Serialize for Rect<T, U>
where T: Serialize,

impl<T, U> Serialize for SideOffsets2D<T, U>
where T: Serialize,

impl<T, U> Serialize for Size2D<T, U>
where T: Serialize,

impl<T, U> Serialize for Size3D<T, U>
where T: Serialize,

impl<T, U> Serialize for Vector2D<T, U>
where T: Serialize,

impl<T, U> Serialize for Vector3D<T, U>
where T: Serialize,

impl Serialize for Ser<'_, (StatusCode, String)>

impl Serialize for Ser<'_, Cookie<'_>>

impl Serialize for Ser<'_, ContentType>

impl Serialize for Ser<'_, HeaderMap>

impl Serialize for Ser<'_, Method>

impl Serialize for Ser<'_, StatusCode>

impl Serialize for Ser<'_, Uri>

impl Serialize for Ser<'_, Mime>

impl<T> Serialize for Serde<T>
where for<'de> De<T>: Deserialize<'de>, for<'a> Ser<'a, T>: Serialize,

impl<T> Serialize for IpcReceiver<T>

impl<T> Serialize for IpcSender<T>

impl Serialize for Code

impl Serialize for Key

impl Serialize for Event

impl Serialize for Data

impl Serialize for Origin

impl Serialize for Image

impl Serialize for Report

impl<I> Serialize for Range<I>
where I: Serialize,

impl Serialize for Value

impl Serialize for Map

impl Serialize for Job

impl Serialize for Bytes

impl<const N: usize> Serialize for ByteArray<N>

impl Serialize for Value

impl Serialize for Number

impl<T: Serialize> Serialize for Spanned<T>

impl<T: Serialize> Serialize for Arc<T>

impl Serialize for Opts

impl Serialize for Block

impl Serialize for GlApi

impl<A: Array> Serialize for SmallVec<A>
where A::Item: Serialize,

impl<Static: StaticAtomSet> Serialize for Atom<Static>

impl Serialize for Source

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for T

impl Serialize for Resize

impl Serialize for ByTo

impl Serialize for Clear

impl Serialize for Float

impl Serialize for Resize

impl Serialize for Font

impl Serialize for CssUrl

impl Serialize for Angle

impl Serialize for Zoom

impl Serialize for Time

impl Serialize for Path

impl Serialize for Angle

impl Serialize for XLang

impl<Angle> Serialize for FontStyle<Angle>
where Angle: Serialize,

impl<Angle, LengthPercentage> Serialize for GenericPathOrShapeFunction<Angle, LengthPercentage>
where Angle: Serialize, LengthPercentage: Serialize,

impl<Angle, LengthPercentage> Serialize for GenericShapeCommand<Angle, LengthPercentage>
where Angle: Serialize, LengthPercentage: Serialize,

impl<Angle, LengthPercentage> Serialize for Shape<Angle, LengthPercentage>
where Angle: Serialize, LengthPercentage: Serialize,

impl<Angle, NonNegativeFactor, ZeroToOneFactor, Length, Shadow, U> Serialize for GenericFilter<Angle, NonNegativeFactor, ZeroToOneFactor, Length, Shadow, U>
where Angle: Serialize, NonNegativeFactor: Serialize, ZeroToOneFactor: Serialize, Length: Serialize, Shadow: Serialize, U: Serialize,

impl<Angle, Number, Length, Integer, LengthPercentage> Serialize for GenericTransformOperation<Angle, Number, Length, Integer, LengthPercentage>
where Angle: Zero + Serialize, LengthPercentage: Zero + ZeroNoPercent + Serialize, Number: PartialEq + Serialize, Length: Serialize, Integer: Serialize,

impl<Angle, Position> Serialize for GenericRayFunction<Angle, Position>
where Angle: Serialize, Position: Serialize,

impl<Angle, Position, LengthPercentage, NonNegativeLengthPercentage, BasicShapeRect> Serialize for GenericBasicShape<Angle, Position, LengthPercentage, NonNegativeLengthPercentage, BasicShapeRect>
where Angle: Serialize, Position: Serialize, LengthPercentage: Serialize, NonNegativeLengthPercentage: Serialize, BasicShapeRect: Serialize,

impl<Function> Serialize for GenericOffsetPath<Function>
where Function: Serialize,

impl<H, V> Serialize for GenericOffsetPosition<H, V>
where H: Serialize, V: Serialize,

impl<H, V> Serialize for GenericPosition<H, V>
where H: Serialize, V: Serialize,

impl<Integer, Number, LinearStops> Serialize for TimingFunction<Integer, Number, LinearStops>
where Integer: Serialize, Number: Serialize, LinearStops: Serialize,

impl<L> Serialize for GenericCalcNode<L>
where L: Serialize,

impl<L> Serialize for Size2D<L>
where L: Serialize,

impl<LengthPercent> Serialize for GenericLengthPercentageOrAuto<LengthPercent>
where LengthPercent: Serialize,

impl<LengthPercentage> Serialize for CoordinatePair<LengthPercentage>
where LengthPercentage: Serialize,

impl<LengthPercentage> Serialize for GenericPolygon<LengthPercentage>
where LengthPercentage: Serialize,

impl<LengthPercentage> Serialize for PolygonCoord<LengthPercentage>
where LengthPercentage: Serialize,

impl<LengthPercentage> Serialize for GenericBorderRadius<LengthPercentage>
where LengthPercentage: Serialize,

impl<LengthPercentage> Serialize for GenericAnchorSizeFunction<LengthPercentage>
where LengthPercentage: Serialize,

impl<LengthPercentage, Length> Serialize for GenericTranslate<LengthPercentage, Length>
where LengthPercentage: Zero + ZeroNoPercent + Serialize, Length: Zero + Serialize,

impl<LengthPercentage, NonNegativeLengthPercentage> Serialize for GenericInsetRect<LengthPercentage, NonNegativeLengthPercentage>
where LengthPercentage: Serialize, NonNegativeLengthPercentage: Serialize,

impl<N, L> Serialize for GenericLineHeight<N, L>
where N: Serialize, L: Serialize,

impl<NonNegativeLengthPercentage> Serialize for GenericShapeRadius<NonNegativeLengthPercentage>
where NonNegativeLengthPercentage: Serialize,

impl<Number> Serialize for GenericScale<Number>
where Number: Serialize,

impl<Number, Angle> Serialize for GenericRotate<Number, Angle>
where Number: Serialize, Angle: Serialize,

impl<P> Serialize for AnchorSide<P>
where P: Serialize,

impl<Percentage, LengthPercentage> Serialize for GenericAnchorFunction<Percentage, LengthPercentage>
where Percentage: Serialize, LengthPercentage: Serialize,

impl<Pos> Serialize for GenericPositionOrAuto<Pos>
where Pos: Serialize,

impl<Position, NonNegativeLengthPercentage> Serialize for Circle<Position, NonNegativeLengthPercentage>
where Position: Serialize, NonNegativeLengthPercentage: Serialize,

impl<Position, NonNegativeLengthPercentage> Serialize for Ellipse<Position, NonNegativeLengthPercentage>
where Position: Serialize, NonNegativeLengthPercentage: Serialize,

impl<Shapes, RayFunction, U> Serialize for GenericOffsetPathFunction<Shapes, RayFunction, U>
where Shapes: Serialize, RayFunction: Serialize,

impl<T> Serialize for Optional<T>
where T: Serialize,

impl<T> Serialize for LogicalMargin<T>
where T: Serialize,

impl<T> Serialize for LogicalPoint<T>
where T: Serialize,

impl<T> Serialize for LogicalRect<T>
where T: Serialize,

impl<T> Serialize for LogicalSize<T>
where T: Serialize,

impl<T> Serialize for Rect<T>
where T: Serialize,

impl<T> Serialize for NonNegative<T>
where T: Serialize,

impl<T> Serialize for ZeroToOne<T>
where T: Serialize,

impl<T> Serialize for GenericMatrix<T>
where T: Serialize,

impl<T> Serialize for GenericMatrix3D<T>
where T: Serialize,

impl<T> Serialize for GenericTransform<T>
where T: Serialize,

impl<T, const FRACTION_BITS: u16> Serialize for FixedPoint<T, FRACTION_BITS>
where T: Serialize,

impl<T: Serialize> Serialize for ArcSlice<T>

impl Serialize for Style

impl Serialize for Cache

impl Serialize for Layout

impl<LineType> Serialize for GenericGridPlacement<LineType>
where LineType: Serialize + GridCoordinate,

impl<Min, Max> Serialize for MinMax<Min, Max>
where Min: Serialize, Max: Serialize,

impl<T> Serialize for Line<T>
where T: Serialize,

impl<T> Serialize for Point<T>
where T: Serialize,

impl<T> Serialize for Rect<T>
where T: Serialize,

impl<T> Serialize for Size<T>
where T: Serialize,

impl<T> Serialize for CacheEntry<T>
where T: Serialize,

impl Serialize for Month

impl Serialize for Date

impl Serialize for Time

impl Serialize for Date

impl Serialize for Time

impl Serialize for Url

impl<S> Serialize for Host<S>
where S: Serialize,

impl Serialize for Braced

impl Serialize for Simple

impl Serialize for Urn

impl Serialize for Uuid

impl Serialize for Cookie

impl Serialize for Date

impl Serialize for Error

impl Serialize for WebGPU

impl<T> Serialize for Pipeline<T>
where T: Serialize + Debug + Serialize,

impl Serialize for Filter

impl Serialize for Frame

impl Serialize for Epoch

impl Serialize for Block

impl Serialize for Epoch

impl Serialize for Row

impl Serialize for Epoch

impl Serialize for Image

impl Serialize for Pass

impl Serialize for PassId

impl Serialize for Scene

impl Serialize for TileId

impl Serialize for Bin

impl<'a> Serialize for PlainCacheRef<'a>

impl<Allocator> Serialize for TextureUnit<Allocator>
where Allocator: Serialize,

impl<Allocator, TextureParameters> Serialize for AllocatorList<Allocator, TextureParameters>
where Allocator: Serialize + AtlasAllocator, TextureParameters: Serialize, Allocator::Parameters: Serialize,

impl<C> Serialize for Picture3DContext<C>
where C: Serialize,

impl<H> Serialize for Item<H>
where H: Serialize,

impl<H> Serialize for LRUTracker<H>
where H: Serialize,

impl<I> Serialize for Handle<I>

impl<I> Serialize for Interner<I>
where I: Serialize + Internable,

impl<I> Serialize for ItemDetails<I>

impl<K, V, U> Serialize for ResourceClassCache<K, V, U>
where K: Serialize + Hash + Eq, V: Serialize, U: Serialize + Default,

impl<M> Serialize for FreeListHandle<M>

impl<S> Serialize for Insertion<S>
where S: Serialize,

impl<S> Serialize for UpdateList<S>
where S: Serialize,

impl<Src, Dst> Serialize for FastTransform<Src, Dst>
where Src: Serialize, Dst: Serialize,

impl<T> Serialize for CompareHelperResult<T>
where T: Serialize,

impl<T> Serialize for Binding<T>
where T: Serialize,

impl<T> Serialize for StoreElement<T>
where T: Serialize,

impl<T> Serialize for TextureFormatPair<T>
where T: Serialize,

impl<T> Serialize for Slot<T>
where T: Serialize,

impl<T> Serialize for LRUCacheEntry<T>
where T: Serialize,

impl<T> Serialize for Index<T>

impl<T> Serialize for Range<T>
where T: Serialize,

impl<T> Serialize for Storage<T>
where T: Serialize,

impl<T> Serialize for PrimKey<T>

impl<T> Serialize for PrimTemplate<T>
where T: Serialize,

impl<T> Serialize for GpuBuffer<T>
where T: Serialize,

impl<T> Serialize for Store<T>
where T: Serialize,

impl<T> Serialize for PrimaryArc<T>
where T: Serialize,

impl<T, M> Serialize for FreeList<T, M>
where T: Serialize,

impl<T, M> Serialize for LRUCache<T, M>
where T: Serialize, M: Serialize,

impl Serialize for ClipId

impl Serialize for ColorF

impl Serialize for ColorU

impl Serialize for Epoch

impl Serialize for Shadow

impl<'a, T> Serialize for ItemRange<'a, T>

impl<T> Serialize for PropertyBinding<T>
where T: Serialize,

impl<T> Serialize for MsgSender<T>

impl<T> Serialize for PropertyValue<T>
where T: Serialize,

impl<T, U> Serialize for DirtyRect<T, U>
where T: Serialize + Copy, U: Serialize,

impl Serialize for Error

impl Serialize for Event

impl Serialize for Floor

impl Serialize for Input

impl Serialize for Joint

impl Serialize for Native

impl Serialize for Viewer

impl Serialize for Views

impl Serialize for Frame

impl Serialize for Space

impl<Eye> Serialize for MockViewInit<Eye>
where Eye: Serialize,

impl<Eye> Serialize for SomeEye<Eye>

impl<Eye> Serialize for View<Eye>
where Eye: Serialize,

impl<J> Serialize for Finger<J>
where J: Serialize,

impl<J> Serialize for Hand<J>
where J: Serialize,

impl<Space> Serialize for Ray<Space>
where Space: Serialize,

impl Serialize for RawId

impl<'a> Serialize for VertexBufferLayout<'a>

impl<'a> Serialize for SamplerDescriptor<'a>

impl<'a, B, S, TV, TLAS> Serialize for BindingResource<'a, B, S, TV, TLAS>

impl<'a, B, S, TV, TLAS> Serialize for BindGroupEntry<'a, B, S, TV, TLAS>

impl<'a, BGL> Serialize for PipelineLayoutDescriptor<'a, BGL>

impl<'a, BGL, B, S, TV, TLAS> Serialize for BindGroupDescriptor<'a, BGL, B, S, TV, TLAS>
where [BufferBinding<B>]: ToOwned, [S]: ToOwned, [TV]: ToOwned, <[BufferBinding<B>] as ToOwned>::Owned: Debug, <[S] as ToOwned>::Owned: Debug, <[TV] as ToOwned>::Owned: Debug, [BindGroupEntry<'a, B, S, TV, TLAS>]: ToOwned, <[BindGroupEntry<'a, B, S, TV, TLAS>] as ToOwned>::Owned: Debug, BGL: Serialize, B: Serialize, S: Serialize, TV: Serialize, TLAS: Serialize,

impl<'a, PLL, SM, PLC> Serialize for ComputePipelineDescriptor<'a, PLL, SM, PLC>
where PLL: Serialize, SM: Serialize, PLC: Serialize,

impl<'a, PLL, SM, PLC> Serialize for RenderPipelineDescriptor<'a, PLL, SM, PLC>
where PLL: Serialize, SM: Serialize, PLC: Serialize,

impl<'a, SM> Serialize for FragmentState<'a, SM>
where SM: Serialize,

impl<'a, SM> Serialize for ProgrammableStageDescriptor<'a, SM>
where SM: Serialize,

impl<'a, SM> Serialize for VertexState<'a, SM>
where SM: Serialize,

impl<B> Serialize for BufferBinding<B>
where B: Serialize,

impl<QS> Serialize for PassTimestampWrites<QS>
where QS: Serialize,

impl<T> Serialize for Rect<T>
where T: Serialize,

impl<T> Serialize for AttachmentData<T>
where T: Serialize,

impl<T: Marker> Serialize for Id<T>

impl<TV> Serialize for RenderPassColorAttachment<TV>
where TV: Serialize,

impl<V> Serialize for PassChannel<V>
where V: Serialize,

impl Serialize for Face

impl Serialize for Color

impl Serialize for Limits

impl<B> Serialize for TexelCopyBufferInfo<B>
where B: Serialize,

impl<L> Serialize for BufferDescriptor<L>
where L: Serialize,

impl<L> Serialize for CreateBlasDescriptor<L>
where L: Serialize,

impl<L> Serialize for CreateTlasDescriptor<L>
where L: Serialize,

impl<L> Serialize for DeviceDescriptor<L>
where L: Serialize,

impl<L> Serialize for QuerySetDescriptor<L>
where L: Serialize,

impl<L> Serialize for SamplerDescriptor<L>
where L: Serialize,

impl<L, V> Serialize for TextureDescriptor<L, V>
where L: Serialize, V: Serialize,

impl<S> Serialize for RequestAdapterOptions<S>
where S: Serialize,

impl<T> Serialize for TexelCopyTextureInfo<T>
where T: Serialize,

impl<V> Serialize for LoadOp<V>
where V: Serialize,

impl<V> Serialize for Operations<V>
where V: Serialize,

impl<V> Serialize for SurfaceConfiguration<V>
where V: Serialize,