Crate serde_core

Source
Expand description

Serde is a framework for serializing and deserializing Rust data structures efficiently and generically.

The serde_core crate contains Serde’s trait definitions with no support for #[derive()].

In crates that derive an implementation of Serialize or Deserialize, you must depend on the serde crate, not serde_core.

In crates that handwrite implementations of Serde traits, or only use them as trait bounds, depending on serde_core is permitted. But serde re-exports all of these traits and can be used for this use case too. If in doubt, disregard serde_core and always use serde.

Crates that depend on serde_core instead of serde are able to compile in parallel with serde_derive even when serde’s “derive” feature is turned on, as shown in the following build timings.


When serde_json depends on serde

When serde_json depends on serde_core

Modules§

de
Generic data structure deserialization framework.
ser
Generic data structure serialization framework.

Macros§

forward_to_deserialize_any
Helper macro when implementing the Deserializer part of a new data format for Serde.

Traits§

Deserialize
A data structure that can be deserialized from any data format supported by Serde.
Deserializer
A data format that can deserialize any data structure supported by Serde.
Serialize
A data structure that can be serialized into any data format supported by Serde.
Serializer
A data format that can serialize any data structure supported by Serde.