package semver import ( "encoding/json" ) // MarshalJSON implements the encoding/json.Marshaler interface. func (v Version) MarshalJSON() ([]byte, error) { return json.Marshal(v.String()) } // UnmarshalJSON implements the encoding/json.Unmarshaler interface. func (v *Version) UnmarshalJSON(data []byte) (err error) { var versionString string if err = json.Unmarshal(data, &versionString); err != nil { return } *v, err = Parse(versionString) return }