package feed //go:generate stringer -linecomment -type=V2AccessComplexity import ( "encoding/json" "fmt" ) // CVSS v2 access complexity type V2AccessComplexity byte const ( V2ACLow V2AccessComplexity = iota // LOW V2ACMedium // MEDIUM V2ACHigh // HIGH ) // Unmarshal CVSS V2 access complexity from JSON. func (me *V2AccessComplexity) 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 "LOW": *me = V2ACLow case "MEDIUM": *me = V2ACMedium case "HIGH": *me = V2ACHigh default: // return error return fmt.Errorf("unknown CVSS v2 access complexity: %s", s) } // return success return nil }