Я пытался понять, как заставить это работать, и я застрял.
У меня есть объект, который выглядит так:
type PropSet map[string]*Prop
type Prop struct {
val reflect.Value
}
, и мне нужногенерировать JSON-представление всех пар ключ-значение, которые оно содержит.Я читал посты на SO, в которых рассказывалось о том, как упорядочить более обыденные типы, но я не смог понять, что делать с типом отражать. Значение.Я думаю, что я должен быть в состоянии сделать что-то простое, как это:
func (p Prop) MarshalJSON() ([]byte, error) {
return json.Marshal(p.val.Value().Interface())
}
... но это просто не работает.Любые предложения?
Дополнительное примечание: я не писал структуру данных, но причина, по которой я думаю, что она использует отражение. Значение для карты состоит в том, что ожидаемые значения могут быть целыми числами,float, string и т. д. Так что это по сути необходимо сделать какой-то вывод типа с базовым интерфейсом, чтобы выяснить возвращаемый результат.