1 interface inheriting from IValueSetFactory
Microsoft.CodeAnalysis.CSharp (1)
Utilities\IValueSetFactory.cs (1)
50
internal interface IValueSetFactory<T> :
IValueSetFactory
3 implementations of IValueSetFactory
Microsoft.CodeAnalysis.CSharp (3)
Utilities\ValueSetFactory.DecimalValueSetFactory.cs (1)
11
private sealed class DecimalValueSetFactory : IValueSetFactory<decimal>,
IValueSetFactory
Utilities\ValueSetFactory.NintValueSetFactory.cs (1)
13
private sealed class NintValueSetFactory : IValueSetFactory<int>,
IValueSetFactory
Utilities\ValueSetFactory.NuintValueSetFactory.cs (1)
13
private sealed class NuintValueSetFactory : IValueSetFactory<uint>,
IValueSetFactory
56 references to IValueSetFactory
Microsoft.CodeAnalysis.CSharp (56)
Binder\DecisionDagBuilder.cs (2)
713
var
fac = ValueSetFactory.ForInput(output);
1156
IValueSetFactory
? valueFac = ValueSetFactory.ForInput(input);
Binder\PatternExplainer.cs (1)
596
IValueSet computeRemainingValues(
IValueSetFactory
fac, ImmutableArray<(BoundDagTest test, bool sense)> constraints)
BoundTree\BoundDecisionDag.cs (1)
193
var
f = ValueSetFactory.ForType(input.Type);
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (4)
554
IValueSetFactory
fac = ValueSetFactory.ForInput(input);
562
IValueSetFactory
fac)
621
IValueSetFactory
fac)
706
private readonly
IValueSetFactory
_fac;
Utilities\IValueSetFactory.cs (1)
10
/// A value set factory, which can be used to create a value set instance. A given instance of <see cref="
IValueSetFactory
"/>
Utilities\ValueSetFactory.BoolValueSetFactory.cs (6)
24
IValueSet
IValueSetFactory
.AllValues => BoolValueSet.AllValues;
26
IValueSet
IValueSetFactory
.NoValues => BoolValueSet.None;
42
IValueSet
IValueSetFactory
.Random(int expectedSize, Random random) => random.Next(4) switch
51
ConstantValue
IValueSetFactory
.RandomValue(Random random) => ConstantValue.Create(random.NextDouble() < 0.5);
53
IValueSet
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value)
58
bool
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
Utilities\ValueSetFactory.cs (3)
32
public static
IValueSetFactory
? ForSpecialType(SpecialType specialType, bool isNative = false)
56
public static
IValueSetFactory
? ForType(TypeSymbol type)
64
public static
IValueSetFactory
? ForInput(BoundDagTemp input)
Utilities\ValueSetFactory.DecimalValueSetFactory.cs (6)
17
IValueSet
IValueSetFactory
.AllValues => NumericValueSet<decimal>.AllValues(DecimalTC.Instance);
19
IValueSet
IValueSetFactory
.NoValues => NumericValueSet<decimal>.NoValues(DecimalTC.Instance);
23
IValueSet
IValueSetFactory
.Random(int expectedSize, Random random) => _underlying.Random(expectedSize, random);
25
ConstantValue
IValueSetFactory
.RandomValue(Random random) => ConstantValue.Create(DecimalTC.Instance.Random(random));
27
IValueSet
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value) =>
30
bool
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right) => _underlying.Related(relation, left, right);
Utilities\ValueSetFactory.EnumeratedValueSetFactory.cs (5)
21
IValueSet
IValueSetFactory
.AllValues => EnumeratedValueSet<T>.AllValues(_tc);
23
IValueSet
IValueSetFactory
.NoValues => EnumeratedValueSet<T>.NoValues(_tc);
38
IValueSet
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value) =>
41
bool
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
58
ConstantValue
IValueSetFactory
.RandomValue(Random random)
Utilities\ValueSetFactory.FloatingValueSetFactory.cs (6)
20
IValueSet
IValueSetFactory
.AllValues => FloatingValueSet<TFloating>.AllValues(_tc);
22
IValueSet
IValueSetFactory
.NoValues => FloatingValueSet<TFloating>.NoValues(_tc);
27
IValueSet
IValueSetFactory
.Random(int expectedSize, Random random) =>
30
ConstantValue
IValueSetFactory
.RandomValue(Random random)
35
IValueSet
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value) =>
40
bool
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
Utilities\ValueSetFactory.NintValueSetFactory.cs (6)
19
IValueSet
IValueSetFactory
.AllValues => NintValueSet.AllValues;
21
IValueSet
IValueSetFactory
.NoValues => NintValueSet.NoValues;
32
IValueSet
IValueSetFactory
.Random(int expectedSize, Random random)
41
ConstantValue
IValueSetFactory
.RandomValue(Random random) => ConstantValue.CreateNativeInt(IntTC.DefaultInstance.Random(random));
43
IValueSet
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value)
48
bool
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
Utilities\ValueSetFactory.NonNegativeIntValueSetFactory.cs (4)
53
IValueSet
IValueSetFactory
.Random(int expectedSize, Random random) => s_underlying.Random(expectedSize, random);
55
ConstantValue
IValueSetFactory
.RandomValue(Random random) => s_underlying.RandomValue(random);
57
IValueSet
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value) =>
60
bool
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right) => s_underlying.Related(relation, left, right);
Utilities\ValueSetFactory.NuintValueSetFactory.cs (6)
19
IValueSet
IValueSetFactory
.AllValues => NuintValueSet.AllValues;
21
IValueSet
IValueSetFactory
.NoValues => NuintValueSet.NoValues;
31
IValueSet
IValueSetFactory
.Random(int expectedSize, Random random)
39
ConstantValue
IValueSetFactory
.RandomValue(Random random) => ConstantValue.CreateNativeUInt(UIntTC.Instance.Random(random));
41
IValueSet
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value)
46
bool
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
Utilities\ValueSetFactory.NumericValueSetFactory.cs (5)
23
IValueSet
IValueSetFactory
.AllValues => NumericValueSet<T>.AllValues(_tc);
25
IValueSet
IValueSetFactory
.NoValues => NumericValueSet<T>.NoValues(_tc);
52
IValueSet
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value) =>
58
ConstantValue
IValueSetFactory
.RandomValue(Random random)
63
bool
IValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)