Skip to main content

IntoValue

Trait IntoValue 

Source
pub trait IntoValue: Debug + Empty {
    // Required methods
    fn into_value(self) -> Value
       where Self: Sized;
    fn serialize_payload<S>(
        &self,
        s: S,
        behavior: SkipSerialization,
    ) -> Result<S::Ok, S::Error>
       where Self: Sized,
             S: Serializer;

    // Provided methods
    fn extract_child_meta(&self) -> MetaMap
       where Self: Sized { ... }
    fn extract_meta_tree(value: &Annotated<Self>) -> MetaTree
       where Self: Sized { ... }
}
Expand description

Implemented for all meta structures.

Required Methods§

Source

fn into_value(self) -> Value
where Self: Sized,

Boxes the meta structure back into a value.

Source

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where Self: Sized, S: Serializer,

Efficiently serializes the payload directly.

Provided Methods§

Source

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Extracts children meta map out of a value.

Source

fn extract_meta_tree(value: &Annotated<Self>) -> MetaTree
where Self: Sized,

Extracts the meta tree out of annotated value.

This should not be overridden by implementators, instead extract_child_meta should be provided instead.

Dyn Compatibility§

This trait is dyn compatible.

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

Implementations on Foreign Types§

Source§

impl IntoValue for String

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, _behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where Self: Sized, S: Serializer,

Source§

impl IntoValue for Uuid

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, _behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where Self: Sized, S: Serializer,

Source§

impl IntoValue for bool

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, _behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where Self: Sized, S: Serializer,

Source§

impl IntoValue for f64

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, _behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where Self: Sized, S: Serializer,

Source§

impl IntoValue for i64

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, _behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where Self: Sized, S: Serializer,

Source§

impl IntoValue for u64

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, _behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where Self: Sized, S: Serializer,

Source§

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

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue, T2: IntoValue, T3: IntoValue, T4: IntoValue, T5: IntoValue, T6: IntoValue, T7: IntoValue, T8: IntoValue, T9: IntoValue, T10: IntoValue, T11: IntoValue> IntoValue for (Annotated<T1>, Annotated<T2>, Annotated<T3>, Annotated<T4>, Annotated<T5>, Annotated<T6>, Annotated<T7>, Annotated<T8>, Annotated<T9>, Annotated<T10>, Annotated<T11>)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue, T2: IntoValue, T3: IntoValue, T4: IntoValue, T5: IntoValue, T6: IntoValue, T7: IntoValue, T8: IntoValue, T9: IntoValue, T10: IntoValue> IntoValue for (Annotated<T1>, Annotated<T2>, Annotated<T3>, Annotated<T4>, Annotated<T5>, Annotated<T6>, Annotated<T7>, Annotated<T8>, Annotated<T9>, Annotated<T10>)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue, T2: IntoValue, T3: IntoValue, T4: IntoValue, T5: IntoValue, T6: IntoValue, T7: IntoValue, T8: IntoValue, T9: IntoValue> IntoValue for (Annotated<T1>, Annotated<T2>, Annotated<T3>, Annotated<T4>, Annotated<T5>, Annotated<T6>, Annotated<T7>, Annotated<T8>, Annotated<T9>)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue, T2: IntoValue, T3: IntoValue, T4: IntoValue, T5: IntoValue, T6: IntoValue, T7: IntoValue, T8: IntoValue> IntoValue for (Annotated<T1>, Annotated<T2>, Annotated<T3>, Annotated<T4>, Annotated<T5>, Annotated<T6>, Annotated<T7>, Annotated<T8>)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue, T2: IntoValue, T3: IntoValue, T4: IntoValue, T5: IntoValue, T6: IntoValue, T7: IntoValue> IntoValue for (Annotated<T1>, Annotated<T2>, Annotated<T3>, Annotated<T4>, Annotated<T5>, Annotated<T6>, Annotated<T7>)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue, T2: IntoValue, T3: IntoValue, T4: IntoValue, T5: IntoValue, T6: IntoValue> IntoValue for (Annotated<T1>, Annotated<T2>, Annotated<T3>, Annotated<T4>, Annotated<T5>, Annotated<T6>)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue, T2: IntoValue, T3: IntoValue, T4: IntoValue, T5: IntoValue> IntoValue for (Annotated<T1>, Annotated<T2>, Annotated<T3>, Annotated<T4>, Annotated<T5>)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue, T2: IntoValue, T3: IntoValue, T4: IntoValue> IntoValue for (Annotated<T1>, Annotated<T2>, Annotated<T3>, Annotated<T4>)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue, T2: IntoValue, T3: IntoValue> IntoValue for (Annotated<T1>, Annotated<T2>, Annotated<T3>)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue, T2: IntoValue> IntoValue for (Annotated<T1>, Annotated<T2>)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T1: IntoValue> IntoValue for (Annotated<T1>,)

Source§

fn into_value(self) -> Value

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where S: Serializer,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

impl<T> IntoValue for Box<T>
where T: IntoValue,

Source§

fn into_value(self) -> Value
where Self: Sized,

Source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Source§

fn serialize_payload<S>( &self, s: S, behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where Self: Sized, S: Serializer,

Implementors§