package easyjson import ( jlexer "github.com/mailru/easyjson/jlexer" "github.com/mailru/easyjson/jwriter" ) // UnknownFieldsProxy implemets UnknownsUnmarshaler and UnknownsMarshaler // use it as embedded field in your structure to parse and then serialize unknown struct fields type UnknownFieldsProxy struct { unknownFields map[string][]byte } func (s *UnknownFieldsProxy) UnmarshalUnknown(in *jlexer.Lexer, key string) { if s.unknownFields == nil { s.unknownFields = make(map[string][]byte, 1) } s.unknownFields[key] = in.Raw() } func (s UnknownFieldsProxy) MarshalUnknowns(out *jwriter.Writer, first bool) { for key, val := range s.unknownFields { if first { first = false } else { out.RawByte(',') } out.String(string(key)) out.RawByte(':') out.Raw(val, nil) } }