in internal/azure/types/object_type.go [201:247]
func (o *ObjectProperty) UnmarshalJSON(body []byte) error {
var m map[string]*json.RawMessage
err := json.Unmarshal(body, &m)
if err != nil {
return err
}
for k, v := range m {
switch k {
case "description":
if v != nil {
var description string
err := json.Unmarshal(*v, &description)
if err != nil {
return err
}
o.Description = &description
}
case "flags":
if v != nil {
var flag int
err := json.Unmarshal(*v, &flag)
if err != nil {
return err
}
flags := make([]ObjectPropertyFlag, 0)
for _, f := range PossibleObjectPropertyFlagValues() {
if flag&int(f) != 0 {
flags = append(flags, f)
}
}
o.Flags = flags
}
case "type":
if v != nil {
var typeRef TypeReference
err := json.Unmarshal(*v, &typeRef)
if err != nil {
return err
}
o.Type = &typeRef
}
default:
return fmt.Errorf("unmarshalling object property, unrecognized key: %s", k)
}
}
return nil
}