4 writes to _values
ILLink.RoslynAnalyzer (4)
src\tools\illink\src\ILLink.Shared\DataFlow\ValueSet.cs (4)
156public ValueSet(TValue value) => _values = value; 158public ValueSet(IEnumerable<TValue> values) => _values = new EnumerableValues(values); 160private ValueSet(EnumerableValues values) => _values = values; 162private ValueSet(ValueSetSentinel sentinel) => _values = sentinel;
45 references to _values
ILLink.RoslynAnalyzer (45)
src\tools\illink\src\ILLink.Shared\DataFlow\ValueSet.cs (45)
167public bool HasMultipleValues => _values is EnumerableValues; 173if (_values == null) 174return other._values == null; 175if (other._values == null) 178if (_values is EnumerableValues enumerableValues) 180if (other._values is EnumerableValues otherValuesSet) 184else if (other._values is TValue otherValue) 190Debug.Assert(other._values == UnknownSentinel); 194else if (_values is TValue value) 196if (other._values is EnumerableValues otherEnumerableValues) 200else if (other._values is TValue otherValue) 206Debug.Assert(other._values == UnknownSentinel); 212Debug.Assert(_values == UnknownSentinel); 213return other._values == UnknownSentinel; 222if (_values == null) 225if (_values is EnumerableValues enumerableValues) 228return _values.GetHashCode(); 231public Enumerable GetKnownValues() => new Enumerable(_values == UnknownSentinel ? null : _values); 236if (_values is null) 238if (_values is EnumerableValues valuesSet) 240if (_values is TValue thisValue) 242Debug.Assert(_values == UnknownSentinel); 248if (left._values == null) 250if (right._values == null) 253if (left._values == UnknownSentinel || right._values == UnknownSentinel) 256if (left._values is not EnumerableValues && right.Contains((TValue)left._values)) 259if (right._values is not EnumerableValues && left.Contains((TValue)right._values)) 273if (left._values == null || right._values == null) 276if (left._values == UnknownSentinel) 279if (right._values == UnknownSentinel) 282if (left._values is not EnumerableValues) 283return right.Contains((TValue)left._values) ? left.DeepCopy() : Empty; 285if (right._values is not EnumerableValues) 286return left.Contains((TValue)right._values) ? right.DeepCopy() : Empty; 293public bool IsEmpty() => _values == null; 295public bool IsUnknown() => _values == UnknownSentinel; 312if (_values is null) 315if (_values == UnknownSentinel) 319if (_values is not EnumerableValues) 321if (_values is IDeepCopyValue<TValue> copyValue)