10次发布
0.2.8 | 2023年4月8日 |
---|---|
0.2.7 | 2023年4月8日 |
0.2.4 | 2022年10月19日 |
0.2.0 | 2022年9月3日 |
0.1.0 | 2022年8月18日 |
#504 in 数据结构
每月66次下载
18KB
365 行
可变
可变是一个用于跟踪结构更改的crate
它仍然是一个非常多的WIP
这里有一个小例子
use mutable::Mutable;
use mutable_derive::Mutable;
#[derive(Mutable)]
struct Simple {
size: usize,
}
#[derive(Mutable)]
struct Complex {
id: String,
value: Simple,
}
fn main() {
let mut c0 = Complex { id: "a".to_string(), value: Simple { size: 32 } };
let c1 = Complex { id: "b".to_string(), value: Simple { size: 64 } };
assert_eq!(c0.update(c1), vec![
ComplexMutation::Id(("a".to_string(), "b".to_string())),
ComplexMutation::Value(SimpleMutation::Size((32, 64)))
]);
}
依赖项
~2MB
~41K SLoC