customer/pkg/json/parse.go

27 lines
414 B
Go
Raw Permalink Normal View History

2023-06-22 09:36:43 +00:00
package json
import (
"encoding/json"
"io"
)
func Parse[T any](reader io.Reader) (*T, error) {
jsonData := new(T)
if err := json.NewDecoder(reader).Decode(jsonData); err != nil {
return nil, err
}
return jsonData, nil
}
func Unmarshal[T any](data []byte) (*T, error) {
unmarshaled := new(T)
if err := json.Unmarshal(data, unmarshaled); err != nil {
return nil, err
}
return unmarshaled, nil
}