Implementación de json marshaller sobre stuct incrustado en Go

Tengo una estructura que me gustaría codificar JSON de manera eficiente:

type MyStruct struct {
    *Meta
    Contents []interface{}
}

type Meta struct {
    Id int
}

La estructura contiene metadatos de una forma conocida y Contenidos de una forma desconocida. La lista de contenidos se llena durante el tiempo de ejecución, por lo que realmente no tengo control sobre ellos. Para mejorar la velocidad de cálculo de Go, me gustaría implementar la interfaz Marshaller sobre la estructura Meta. La interfaz de Marshaller se ve así:

type Marshaler interface {
        MarshalJSON() ([]byte, error)
}

Tenga en cuenta que la estructura Meta no es tan simple como se muestra aquí. He intentado implementar la interfaz Marshaler sobre la estructura Meta, pero parece que cuando JSON marshal MyStruct, el resultado es solo el resultado devuelto por la interfaz Meta marshalling.

Así que mi pregunta es: ¿cómo puedo JSON ordenar una estructura, que contiene una estructura incrustada con su propio contador JSON y otra estructura sin una?

Respuestas a la pregunta(1)

Su respuesta a la pregunta