Trait rkyv::with::SerializeWith

source ·
pub trait SerializeWith<F: ?Sized, S: Fallible + ?Sized>: ArchiveWith<F> {
    // Required method
    fn serialize_with(
        field: &F,
        serializer: &mut S
    ) -> Result<Self::Resolver, S::Error>;
}
Expand description

A variant of Serialize that works with With wrappers.

Required Methods§

source

fn serialize_with( field: &F, serializer: &mut S ) -> Result<Self::Resolver, S::Error>

Serializes the field type F using the given serializer.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<'a, F: Serialize<S> + Clone, S: Fallible + ?Sized> SerializeWith<Cow<'a, F>, S> for AsOwned

source§

impl<'a, S: Serializer + ?Sized> SerializeWith<Cow<'a, str>, S> for AsOwned

source§

impl<'a, S: Serializer + ?Sized> SerializeWith<Cow<'a, CStr>, S> for AsOwned

source§

impl<'a, T, S> SerializeWith<With<&'a [T], RefAsBox>, S> for CopyOptimize
where T: Serialize<S>, S: Serializer + ?Sized,

source§

impl<'a, T: Serialize<S> + Clone, S: ScratchSpace + Serializer + ?Sized> SerializeWith<Cow<'a, [T]>, S> for AsOwned

source§

impl<A, O, S> SerializeWith<Option<O>, S> for Map<A>
where S: Fallible + ?Sized, A: ArchiveWith<O> + SerializeWith<O, S>,

source§

impl<A, O, S> SerializeWith<Vec<O>, S> for Map<A>

source§

impl<F, S: Fallible + ?Sized> SerializeWith<F, S> for Skip

source§

impl<F: Serialize<S>, S: Fallible + ?Sized> SerializeWith<&F, S> for Inline

source§

impl<F: Serialize<S>, S: Fallible + ?Sized> SerializeWith<Cell<F>, S> for Unsafe

source§

impl<F: Serialize<S>, S: Fallible + ?Sized> SerializeWith<UnsafeCell<F>, S> for Unsafe

source§

impl<F: Serialize<S>, S: Fallible + ?Sized> SerializeWith<Mutex<F>, S> for Lock
where S::Error: From<LockError>,

source§

impl<F: Serialize<S>, S: Fallible + ?Sized> SerializeWith<RwLock<F>, S> for Lock
where S::Error: From<LockError>,

source§

impl<F: SerializeUnsized<S> + ?Sized, S: Fallible + ?Sized> SerializeWith<&F, S> for RefAsBox

source§

impl<F: SerializeUnsized<S> + ?Sized, S: Fallible + ?Sized> SerializeWith<F, S> for AsBox

source§

impl<K, V, S> SerializeWith<BTreeMap<K, V>, S> for AsVec
where K: Serialize<S>, V: Serialize<S>, S: ScratchSpace + Serializer + ?Sized,

source§

impl<K, V, S> SerializeWith<HashMap<K, V>, S> for AsVec
where K: Serialize<S>, V: Serialize<S>, S: ScratchSpace + Serializer + ?Sized,

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroI8>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroI16>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroI32>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroI64>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroI128>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroIsize>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroU8>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroU16>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroU32>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroU64>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroU128>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<Option<NonZeroUsize>, S> for Niche

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicBool, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicI8, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicI16, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicI32, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicI64, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicIsize, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicU8, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicU16, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicU32, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicU64, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<AtomicUsize, S> for Atomic

source§

impl<S: Fallible + ?Sized> SerializeWith<OsString, S> for AsString

source§

impl<S: Fallible + ?Sized> SerializeWith<PathBuf, S> for AsString

source§

impl<S: Fallible + ?Sized> SerializeWith<SystemTime, S> for UnixTimestamp

source§

impl<T, S> SerializeWith<Option<Box<T>>, S> for Niche

source§

impl<T, S> SerializeWith<Box<[T]>, S> for CopyOptimize
where T: Serialize<S>, S: Serializer + ?Sized,

source§

impl<T, S> SerializeWith<BTreeSet<T>, S> for AsVec
where T: Serialize<S>, S: ScratchSpace + Serializer + ?Sized,

source§

impl<T, S> SerializeWith<Vec<T>, S> for CopyOptimize
where T: Serialize<S>, S: Serializer + ?Sized,

source§

impl<T, S> SerializeWith<Vec<T>, S> for Raw
where T: Serialize<S>, S: Serializer + ?Sized,

source§

impl<T, S> SerializeWith<HashSet<T>, S> for AsVec
where T: Serialize<S>, S: ScratchSpace + Serializer + ?Sized,