Crate revision

Source
Expand description

Defines a generic trait for version tolerant serialization and deserialization and implements it for primitive data types using the bincode format.

The Revisioned trait is automatically implemented for the following primitives: u8, u16, u32, u64, u128, usize, i8, i16, i32, i64, i128, isize, f32, f64, char, String, Vec, Arrays up to 32 elements, Option, Box, Bound, Wrapping, (A, B), (A, B, C), (A, B, C, D), (A, B, C, D, E), Duration, HashMap<K, V>, BTreeMap<K, V>, Result<T, E>, Cow<’_, T>, Decimal, regex::Regex, uuid::Uuid, chrono::Duration, chrono::DateTime, geo::Point, geo::LineString geo::Polygon, geo::MultiPoint, geo::MultiLineString, and geo::MultiPolygon.

Re-exports§

pub use crate::error::Error;

Modules§

error
implementations
prelude

Traits§

DeserializeRevisioned
Revisioned
Trait that provides an interface for version aware serialization and deserialization.
SerializeRevisioned

Functions§

from_reader
Deserialize a revisioned type from a reader
from_slice
Deserialize a revisioned type from a slice of bytes
to_vec
Serialize a revisioned type into a vec of bytes
to_writer
Serialize a revisioned type into a vec of bytes

Attribute Macros§

revisioned
Generates serialization and deserialization code as an implementation of the Revisioned trait for structs and enums.