EncodeObjectKeys encodes an object to JSON
(v MarshalerJSONObject, keys []string)
| 25 | |
| 26 | // EncodeObjectKeys encodes an object to JSON |
| 27 | func (enc *Encoder) EncodeObjectKeys(v MarshalerJSONObject, keys []string) error { |
| 28 | if enc.isPooled == 1 { |
| 29 | panic(InvalidUsagePooledEncoderError("Invalid usage of pooled encoder")) |
| 30 | } |
| 31 | enc.hasKeys = true |
| 32 | enc.keys = keys |
| 33 | _, err := enc.encodeObject(v) |
| 34 | if err != nil { |
| 35 | enc.err = err |
| 36 | return err |
| 37 | } |
| 38 | _, err = enc.Write() |
| 39 | if err != nil { |
| 40 | enc.err = err |
| 41 | return err |
| 42 | } |
| 43 | return nil |
| 44 | } |
| 45 | |
| 46 | func (enc *Encoder) encodeObject(v MarshalerJSONObject) ([]byte, error) { |
| 47 | enc.grow(512) |