json.go 447 B

123456789101112131415161718192021222324
  1. package parser
  2. import "encoding/json"
  3. func UnmarshalJson[T any](text string) (T, error) {
  4. return UnmarshalJsonBytes[T]([]byte(text))
  5. }
  6. func UnmarshalJsonBytes[T any](data []byte) (T, error) {
  7. var result T
  8. err := json.Unmarshal(data, &result)
  9. return result, err
  10. }
  11. func MarshalJson[T any](data T) string {
  12. b, _ := json.Marshal(data)
  13. return string(b)
  14. }
  15. func MarshalJsonBytes[T any](data T) []byte {
  16. b, _ := json.Marshal(data)
  17. return b
  18. }