summaryrefslogtreecommitdiff
path: root/vendor/github.com/xlgmokha/x/pkg/serde/json.go
blob: 47cfe90a1a6d1ec8fef03bf747adfa82df11615a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
package serde

import (
	"encoding/json"
	"io"
)

func ToJSON[T any](w io.Writer, item T) error {
	encoder := json.NewEncoder(w)
	encoder.SetIndent("", "  ")
	return encoder.Encode(item)
}

func FromJSON[T any](reader io.Reader) (T, error) {
	var item T
	return item, json.NewDecoder(reader).Decode(&item)
}