如何使用Serde进行类型 - 长度 - 值(TLV)序列化?

时间:2017-09-12 22:43:28

标签: rust serde

我需要根据TLV formatSerde序列化一类结构。 TLV可以嵌套在树格式中。

这些结构的字段通常是序列化的,就像bincode那样,但在字段数据之前,我必须包括一个标记(理想情况下是关联的)和字段数据的长度(以字节为单位)。

理想情况下,Serde会认识到需要这种序列化的结构,可能是通过让它们实现TLV特征。这部分是可选的,因为我也可以明确地注释每个结构。

所以这个问题按优先顺序分为3部分:

  1. 如何在执行该数据序列化之前获取长度数据(来自Serde?)?

  2. 如何将标签与结构相关联(虽然我想我还可以在结构中包含标签......)?

  3. 如何让Serde识别一类结构并应用自定义序列化?

  4. 请注意,1)是(核心)问题。如果1)可以用Serde解决,我将发布2)和3)作为个别问题。

0 个答案:

没有答案