6 implementations of IConstantValueSet
Microsoft.CodeAnalysis.CSharp (6)
Utilities\ValueSetFactory.BoolValueSet.cs (1)
13private sealed class BoolValueSet : IConstantValueSet<bool>
Utilities\ValueSetFactory.EnumeratedValueSet.cs (1)
21private sealed class EnumeratedValueSet<T> : IConstantValueSet<T>
Utilities\ValueSetFactory.FloatingValueSet.cs (1)
20private sealed class FloatingValueSet<TFloating> : IConstantValueSet<TFloating>
Utilities\ValueSetFactory.NintValueSet.cs (1)
15private sealed class NintValueSet : IConstantValueSet<int>, IValueSet
Utilities\ValueSetFactory.NuintValueSet.cs (1)
15private sealed class NuintValueSet : IConstantValueSet<uint>, IValueSet
Utilities\ValueSetFactory.NumericValueSet.cs (1)
22private sealed class NumericValueSet<T> : IConstantValueSet<T>
72 references to IConstantValueSet
Microsoft.CodeAnalysis.CSharp (72)
Binder\DecisionDagBuilder.cs (2)
3837var lengthValues = (IConstantValueSet<int>)state.RemainingValues[s1LengthTemp];
Binder\PatternExplainer.cs (2)
460var lengthValues = (IConstantValueSet<int>)computeRemainingValues(ValueSetFactory.ForLength, getArray(constraintMap, lengthTemp));
Utilities\IConstantValueSetFactory.cs (1)
55IConstantValueSet<T> Related(BinaryOperatorKind relation, T value);
Utilities\IValueSet.cs (5)
73IConstantValueSet<T> Intersect(IConstantValueSet<T> other); 78IConstantValueSet<T> Union(IConstantValueSet<T> other); 83new IConstantValueSet<T> Complement();
Utilities\ValueSetFactory.BoolValueSet.cs (7)
73public IConstantValueSet<bool> Complement() => Create(!_hasFalse, !_hasTrue); 77public IConstantValueSet<bool> Intersect(IConstantValueSet<bool> other) 85public IValueSet Intersect(IValueSet other) => this.Intersect((IConstantValueSet<bool>)other); 87public IConstantValueSet<bool> Union(IConstantValueSet<bool> other) 95IValueSet IValueSet.Union(IValueSet other) => this.Union((IConstantValueSet<bool>)other);
Utilities\ValueSetFactory.BoolValueSetFactory.cs (1)
28public IConstantValueSet<bool> Related(BinaryOperatorKind relation, bool value)
Utilities\ValueSetFactory.DecimalValueSetFactory.cs (1)
21public IConstantValueSet<decimal> Related(BinaryOperatorKind relation, decimal value) => _underlying.Related(relation, DecimalTC.Normalize(value));
Utilities\ValueSetFactory.EnumeratedValueSet.cs (7)
113public IConstantValueSet<T> Complement() => new EnumeratedValueSet<T>(!_included, _membersIncludedOrExcluded, _tc); 117public IConstantValueSet<T> Intersect(IConstantValueSet<T> o) 138IValueSet IValueSet.Intersect(IValueSet other) => Intersect((IConstantValueSet<T>)other); 140public IConstantValueSet<T> Union(IConstantValueSet<T> o) 161IValueSet IValueSet.Union(IValueSet other) => Union((IConstantValueSet<T>)other);
Utilities\ValueSetFactory.EnumeratedValueSetFactory.cs (2)
27public IConstantValueSet<T> Related(BinaryOperatorKind relation, T value) 50IConstantValueSet<T> result = EnumeratedValueSet<T>.NoValues(_tc);
Utilities\ValueSetFactory.FloatingValueSet.cs (14)
22private readonly IConstantValueSet<TFloating> _numbers; 26private FloatingValueSet(IConstantValueSet<TFloating> numbers, bool hasNaN, FloatingTC<TFloating> tc) 32internal static IConstantValueSet<TFloating> AllValues(FloatingTC<TFloating> tc) => new FloatingValueSet<TFloating>( 35internal static IConstantValueSet<TFloating> NoValues(FloatingTC<TFloating> tc) => new FloatingValueSet<TFloating>( 38internal static IConstantValueSet<TFloating> Random(int expectedSize, Random random, FloatingTC<TFloating> tc) 46numbers: (IConstantValueSet<TFloating>)new NumericValueSetFactory<TFloating>(tc).Random(expectedSize, random), hasNaN: hasNan, tc); 70public static IConstantValueSet<TFloating> Related(BinaryOperatorKind relation, TFloating value, FloatingTC<TFloating> tc) 98public IConstantValueSet<TFloating> Intersect(IConstantValueSet<TFloating> o) 111IValueSet IValueSet.Intersect(IValueSet other) => this.Intersect((IConstantValueSet<TFloating>)other); 113public IConstantValueSet<TFloating> Union(IConstantValueSet<TFloating> o) 126IValueSet IValueSet.Union(IValueSet other) => this.Union((IConstantValueSet<TFloating>)other); 128public IConstantValueSet<TFloating> Complement()
Utilities\ValueSetFactory.FloatingValueSetFactory.cs (1)
24public IConstantValueSet<TFloating> Related(BinaryOperatorKind relation, TFloating value) =>
Utilities\ValueSetFactory.NintValueSet.cs (7)
21private readonly IConstantValueSet<int> _values; 39internal NintValueSet(bool hasSmall, IConstantValueSet<int> values, bool hasLarge) 87public IConstantValueSet<int> Complement() 98public IConstantValueSet<int> Intersect(IConstantValueSet<int> o) 110public IConstantValueSet<int> Union(IConstantValueSet<int> o)
Utilities\ValueSetFactory.NintValueSetFactory.cs (2)
23public IConstantValueSet<int> Related(BinaryOperatorKind relation, int value) 36values: (IConstantValueSet<int>)new NumericValueSetFactory<int>(IntTC.DefaultInstance).Random(expectedSize, random),
Utilities\ValueSetFactory.NonNegativeIntValueSetFactory.cs (1)
25public IConstantValueSet<int> Related(BinaryOperatorKind relation, int value)
Utilities\ValueSetFactory.NuintValueSet.cs (7)
21private readonly IConstantValueSet<uint> _values; 31internal NuintValueSet(IConstantValueSet<uint> values, bool hasLarge) 74public IConstantValueSet<uint> Complement() 84public IConstantValueSet<uint> Intersect(IConstantValueSet<uint> o) 95public IConstantValueSet<uint> Union(IConstantValueSet<uint> o)
Utilities\ValueSetFactory.NuintValueSetFactory.cs (2)
23public IConstantValueSet<uint> Related(BinaryOperatorKind relation, uint value) 34values: (IConstantValueSet<uint>)new NumericValueSetFactory<uint>(UIntTC.Instance).Random(expectedSize, random),
Utilities\ValueSetFactory.NumericValueSet.cs (9)
64var gz = new NumericValueSetFactory<T>(_tc).Related(BinaryOperatorKind.GreaterThanOrEqual, _tc.Zero); 131public IConstantValueSet<T> Complement() 162public IConstantValueSet<T> Intersect(IConstantValueSet<T> o) 237IValueSet IValueSet.Intersect(IValueSet other) => this.Intersect((IConstantValueSet<T>)other); 239public IConstantValueSet<T> Union(IConstantValueSet<T> o) 288IValueSet IValueSet.Union(IValueSet other) => this.Union((IConstantValueSet<T>)other); 293internal static IConstantValueSet<T> Random(int expectedSize, Random random, INumericTC<T> tc)
Utilities\ValueSetFactory.NumericValueSetFactory.cs (1)
29public IConstantValueSet<T> Related(BinaryOperatorKind relation, T value)