golang-set
golang-set copied to clipboard
Fix threadsafe.go threadSafeSet[T].UnmarshalJSON
threadSafeSet[T].UnmarshalJSON Can modify threadUnsafeSet data, so need a write lock
A more appropriate approach
func (t *threadSafeSet[T]) UnmarshalJSON(b []byte) error {
var i []T
err := json.Unmarshal(b, &i)
if err != nil {
return err
}
t.Append(i...)
return nil
}