Реализация json marshaller над встроенной структурой в Go

У меня есть структура, которую я хотел бы эффективно кодировать JSON:

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

type Meta struct {
    Id int
}

Структура содержит метаданные известной формы и содержимое неизвестной формы. Список содержимого заполняется во время выполнения, поэтому я не могу контролировать их. Чтобы улучшить скорость сортировки в Go, я бы хотел реализовать интерфейс Marshaller поверх структуры Meta. Интерфейс Marshaller выглядит следующим образом:

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

Пожалуйста, имейте в виду, что структура Meta не так проста, как показано здесь. Я пытался реализовать интерфейс Marshaler через структуру Meta, но кажется, что когда я затем выполняю JSON-маршал MyStruct, результатом является только результат, возвращаемый интерфейсом Meta-marshalling.

Итак, мой вопрос: как я могу JSON маршалировать структуру, которая содержит встроенную структуру en со своим собственным маршаллером JSON и другую структуру без таковой?

Ответы на вопрос(1)

Ваш ответ на вопрос