我想使用 Serde 序列化一个通用的数据结构。
我的图书馆的用户应该能够提供他们自己的结构来实现Serialize
和Deserialize
. 我应该能够取回他们序列化数据所用值的原始类型信息。
我该怎么做呢?
我尝试过这样的事情:
#[derive(Serialize, Deserialize)]
struct Message<V> {
key: Key,
value: V,
}
V
我想在反序列化数据后取回类型。
这是这样做的方式还是我偏离了轨道?
我希望用户能够扩展可能的值/类型。我想要枚举的行为,但用户可以灵活地添加自己的结构作为可能的候选者。与此代码类似,但它们都需要唯一的ids。