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.