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 }