反序列化JSON并将叶数据放入Rc结构的最佳方法是什么?
我有一个JSON文件,其中包含一些重复的对象结构和字符串,如下所示反序列化JSON并将叶数据放入Rc结构的最佳方法是什么?,json,rust,reference-counting,serde,Json,Rust,Reference Counting,Serde,我有一个JSON文件,其中包含一些重复的对象结构和字符串,如下所示 { "array": [ { "data": [ "blih", "blah", "bloh" ] }, ... ] } 我对Rust的最佳理解是将JSON反序列化为一组结构,然后将数据复制到另一组结构中,其中包括Rc: //json结构 #[派生(序列化、反序列化)] 结构ArrayJson{
{
"array": [
{
"data": [
"blih",
"blah",
"bloh"
]
},
...
]
}
我对Rust的最佳理解是将JSON反序列化为一组结构,然后将数据复制到另一组结构中,其中包括Rc
:
//json结构
#[派生(序列化、反序列化)]
结构ArrayJson{
数组:Vec,
}
#[派生(序列化、反序列化)]
结构数据JSON{
资料来源:Vec,
}
//钢筋混凝土结构
结构阵列{
数组:Vec,
}
结构数据{
资料来源:Vec,
}
有没有一种方法我不能创建两组结构,而只创建一组
更新:我相信serde的rc
不是我想要的,因为它序列化和反序列化了实际的rc
我只关心锈蚀侧的
Rc
结构,因此我认为我需要两个结构。启用serde板条箱的Rc
功能,serde将为Rc
和Arc
实现序列化和反序列化。然后,您可以在ArrayRc
和DataRc
结构上导出这两个特性
对于反序列化,它将为反序列化的每个值创建一个新的Rc
,强计数为1,这听起来像是您想要的。请在回答新问题之前搜索回答新问题的现有问题。已更新我的问题。我相信启用rc功能不是我想要的。请更清楚地解释为什么复制()无效。具体来说,不清楚“它序列化和反序列化实际的rc
Arc
struct”是什么意思。它序列化和反序列化rc
struct,即,包括引用计数。我只希望内存由Rc
struct管理,包括引用计数-它没有。你可以。我认为文件把我弄糊涂了,并问了一个问题,但我同意这个问题确实是重复的。