mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-01-01 10:40:30 -05:00
25 lines
278 B
Go
25 lines
278 B
Go
package conversions
|
|
|
|
import (
|
|
"encoding/json"
|
|
)
|
|
|
|
func To[T any](v any) (T, error) {
|
|
var t T
|
|
|
|
if v == nil {
|
|
return t, nil
|
|
}
|
|
|
|
j, err := json.Marshal(v)
|
|
if err != nil {
|
|
return t, err
|
|
}
|
|
|
|
if err := json.Unmarshal(j, &t); err != nil {
|
|
return t, err
|
|
}
|
|
|
|
return t, nil
|
|
}
|