main
1package serde
2
3import (
4 "io"
5)
6
7func From[T any](r io.Reader, mediaType MediaType) (T, error) {
8 switch mediaType {
9 case JSONAPI:
10 return FromJSONAPI[T](r)
11 case YAML:
12 return FromYAML[T](r)
13 default:
14 return FromJSON[T](r)
15 }
16}
17
18func To[T any](w io.Writer, item T, mediaType MediaType) error {
19 switch mediaType {
20 case JSONAPI:
21 return ToJSONAPI[T](w, item)
22 case Text:
23 return ToPlain[T](w, item)
24 case YAML:
25 return ToYAML[T](w, item)
26 default:
27 return ToJSON[T](w, item)
28 }
29}