package feed //go:generate stringer -linecomment -type=V3UserInteraction import ( "encoding/json" "fmt" ) // CVSS v3 user interaction type V3UserInteraction byte const ( V3UINone V3UserInteraction = iota // NONE V3UIRequired // REQUIRED ) // Unmarshal CVSS user interaction from JSON. func (me *V3UserInteraction) UnmarshalJSON(b []byte) error { // decode string, check for error var s string if err := json.Unmarshal(b, &s); err != nil { return err } // check value switch s { case "NONE": *me = V3UINone case "REQUIRED": *me = V3UIRequired default: // return error return fmt.Errorf("unknown CVSS v3 user interaction: %s", s) } // return success return nil }