Skip to main content

ValueSerializer

Trait ValueSerializer 

Source
pub trait ValueSerializer<__Context__, Value: ?Sized>: IsProviderFor<ValueSerializerComponent, __Context__, Value> {
    // Required method
    fn serialize<S>(
        __context__: &__Context__,
        value: &Value,
        serializer: S,
    ) -> Result<S::Ok, S::Error>
       where S: Serializer;
}

Required Methods§

Source

fn serialize<S>( __context__: &__Context__, value: &Value, serializer: S, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<__Context__, Value: ?Sized, __Components__, __Delegate__> ValueSerializer<__Context__, Value> for UseDelegate<__Components__>
where __Components__: DelegateComponent<Value, Delegate = __Delegate__>, __Delegate__: ValueSerializer<__Context__, Value>,

Source§

fn serialize<S>( __context__: &__Context__, value: &Value, serializer: S, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

impl<__Context__, Value: ?Sized> ValueSerializer<__Context__, Value> for UseContext
where __Context__: CanSerializeValue<Value>,

Source§

fn serialize<S>( __context__: &__Context__, value: &Value, serializer: S, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Implementors§

Source§

impl<__Component__, __Context__, Value: ?Sized> ValueSerializer<__Context__, Value> for __Component__
where __Component__: DelegateComponent<ValueSerializerComponent> + IsProviderFor<ValueSerializerComponent, __Context__, Value>, __Component__::Delegate: ValueSerializer<__Context__, Value>,

Source§

impl<__Context__, Value, Target> ValueSerializer<__Context__, Value> for SerializeFrom<Target>
where Value: Clone + Into<Target>, __Context__: CanSerializeValue<Target>,

Source§

impl<__Context__, Value, Target> ValueSerializer<__Context__, Value> for TrySerializeFrom<Target>
where Value: Clone + TryInto<Target, Error: Display>, __Context__: CanSerializeValue<Target>,

Source§

impl<__Context__, Value> ValueSerializer<__Context__, Value> for SerializeBytes
where Value: AsRef<[u8]>,

Source§

impl<__Context__, Value> ValueSerializer<__Context__, Value> for SerializeDeref
where Value: Deref, __Context__: CanSerializeValue<Value::Target>,

Source§

impl<__Context__, Value> ValueSerializer<__Context__, Value> for SerializeFields
where Value: HasFields, Value::Fields: FieldsSerializer<__Context__, Value>,

Source§

impl<__Context__, Value> ValueSerializer<__Context__, Value> for SerializeIterator
where for<'a> &'a Value: IntoIterator, __Context__: for<'a> CanSerializeValue<<&'a Value as IntoIterator>::Item>,

Source§

impl<__Context__, Value> ValueSerializer<__Context__, Value> for SerializeString
where Value: AsRef<str>,

Source§

impl<__Context__, Value> ValueSerializer<__Context__, Value> for SerializeWithDisplay
where Value: Display, __Context__: CanSerializeValue<String>,

Source§

impl<__Context__, Value> ValueSerializer<__Context__, Value> for UseSerde
where Value: SerdeSerialize,