mirror of
https://github.com/spf13/viper
synced 2024-11-05 04:37:02 +00:00
4b307cc0f3
This interface is specific to encoding data from Viper's internal, so it's okay to make it Viper specific. BREAKING CHANGE: the encoder interface now accepts a map instead of an interface Signed-off-by: Mark Sagi-Kazar <mark.sagikazar@gmail.com>
17 lines
419 B
Go
17 lines
419 B
Go
package json
|
|
|
|
import (
|
|
"encoding/json"
|
|
)
|
|
|
|
// Codec implements the encoding.Encoder and encoding.Decoder interfaces for JSON encoding.
|
|
type Codec struct{}
|
|
|
|
func (Codec) Encode(v map[string]interface{}) ([]byte, error) {
|
|
// TODO: expose prefix and indent in the Codec as setting?
|
|
return json.MarshalIndent(v, "", " ")
|
|
}
|
|
|
|
func (Codec) Decode(b []byte, v map[string]interface{}) error {
|
|
return json.Unmarshal(b, &v)
|
|
}
|