我需要根据TLV format和Serde序列化一类结构。 TLV可以嵌套在树格式中。
这些结构的字段通常是序列化的,就像bincode
那样,但在字段数据之前,我必须包括一个标记(理想情况下是关联的)和字段数据的长度(以字节为单位)。
理想情况下,Serde会认识到需要这种序列化的结构,可能是通过让它们实现TLV
特征。这部分是可选的,因为我也可以明确地注释每个结构。
所以这个问题按优先顺序分为3部分:
如何在执行该数据序列化之前获取长度数据(来自Serde?)?
如何将标签与结构相关联(虽然我想我还可以在结构中包含标签......)?
如何让Serde识别一类结构并应用自定义序列化?
请注意,1)是(核心)问题。如果1)可以用Serde解决,我将发布2)和3)作为个别问题。