4 个版本
0.2.2 | 2020年10月15日 |
---|---|
0.2.1 | 2020年10月8日 |
0.2.0 | 2020年10月8日 |
0.1.0 | 2020年10月7日 |
#1231 在 编码
107 每月下载次数
在 2 crates 中使用
52KB
1.5K SLoC
概述
示例
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);
一致性
Option<bool>
根据 SCALE 编码被序列化为单个字节。
特性
no_std
通过禁用默认特性得到支持。
std
:支持std
。默认启用。alloc
:支持alloc
crate。
🔖 构建依赖和 proc-macros 中启用的特性也会为正常依赖项启用,这可能导致 serde
在不希望的情况下具有 std
特性。Nightly cargo 通过 -Z features=host_dep
或以下在 .cargo/config
[unstable]
features = ["host_dep"]
例如,当依赖于 parity-scale-codec-derive
时,会出现此问题。
测试
大多数测试位于(工作区的一部分) serde-scale-tests
crate 中(以避免启用 serde
特性的依赖项)。
cargo test --workspace
贡献
所有贡献都必须在 zlib 许可证 下授权。
相关项目
parity-scale-codec:参考 Rust 实现
依赖项
~0.4–1MB
~22K SLoC