Skip to main content

Format

Struct Format 

Source
pub struct Format;
Expand description

Applies serde-aware rewrites to a single shared type graph.

Use this when the serialized and deserialized wire shape can be represented by the same exported schema. Exporters should pass this formatter to Specta’s formatting hook, for example specta_typescript::Typescript::default().export(&types, specta_serde::Format).

This formatter validates the graph for unified export and applies serde container, variant, and field behavior that affects the exported shape, such as renames, tagging, defaults, flattening, and compatible conversion attrs.

If serde metadata produces different serialize and deserialize shapes, this formatter returns an error instead of guessing. In that case, use PhasesFormat.

Trait Implementations§

Source§

impl Format for Format

Source§

fn map_types(&self, types: &Types) -> Result<Cow<'_, Types>, FormatError>

Apply a map function to the full Types collection. Read more
Source§

fn map_type( &self, types: &Types, dt: &DataType, ) -> Result<Cow<'_, DataType>, FormatError>

Map an individual DataType with access to the surrounding Types. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.