我有一个结构,我想有效地进行 JSON 编码:
type MyStruct struct {
*Meta
Contents []interface{}
}
type Meta struct {
Id int
}
该结构包含已知形式的元数据和未知形式的内容,内容列表在运行时填充,因此我无法真正控制它们。为了提高 Go 的编组速度,我想在 Meta 结构上实现 Marshaller 接口。Marshaller 界面如下所示:
type Marshaler interface {
MarshalJSON() ([]byte, error)
}
请记住,Meta 结构并不像这里显示的那么简单。我已经尝试通过 Meta 结构实现 Marshaler 接口,但似乎当我然后 JSON marshal MyStruct 时,结果只是 Meta marshalling 接口返回的结果。
所以我的问题是:我怎样才能 JSON 编组一个结构,它包含带有自己的 JSON 编组器的嵌入式结构和另一个没有的结构?
相关分类