mirror of
https://github.com/hanzoai/traces.git
synced 2026-10-30 18:20:41 +00:00
20 lines
476 B
Go
20 lines
476 B
Go
package util
|
|
|
|
import "go.yaml.in/yaml/v2"
|
|
|
|
// YAMLMarshalUnmarshal utility function that converts a YAML interface in a map
|
|
// doing marshal and unmarshal of the parameter
|
|
func YAMLMarshalUnmarshal(in interface{}) (map[interface{}]interface{}, error) {
|
|
yamlBytes, err := yaml.Marshal(in)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
object := make(map[interface{}]interface{})
|
|
if err := yaml.Unmarshal(yamlBytes, object); err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return object, nil
|
|
}
|