[−][src]Crate serde_scale
Overview
Serializer and deserializer for the SCALE encoding
based on serde.
Example
use serde::{Deserialize, Serialize}; #[derive(Debug, Deserialize, PartialEq, Serialize)] struct Point { x: i8, y: i8, } let point = Point { x: 3, y: 4 }; let deserialized = serde_scale::from_slice(&serde_scale::to_vec(&point).unwrap()).unwrap(); assert_eq!(point, deserialized);
Conformance
Option<bool> is serialized as a single byte according to the SCALE encoding.
Features
no_std is supported by disabling default features.
std: Support forstd. It is enabled by default.alloc: Support for thealloccrate.
Test
Most tests live in the serde-scale-tests crate (part of the workspace) in order to avoid
dependencies enabling serde features.
cargo test --workspace
Contribute
All contributions shall be licensed under the zlib license.
Related projects
parity-scale-codec: Reference Rust implementation
Structs
| Deserializer | Deserializer for the SCALE encoding |
| EndOfInput | Error indicating that the end of the input was reached and not enough bytes were read |
| OtherError | |
| Serializer | Serializer for the SCALE encoding |
Enums
| Bytes | Bytes borrowed from the deserializer or valid only for the duration of the call to |
| Error | Serialization errors |
Traits
| Read | Interface to read bytes |
| Write | Interface to write bytes |
Functions
| from_slice | Deserializes a value encoded with SCALE |
| to_vec | Serializes a value using the SCALE encoding |