1 interface inheriting from IConstantValueSetFactory
Microsoft.CodeAnalysis.CSharp (1)
Utilities\IConstantValueSetFactory.cs (1)
50
internal interface IConstantValueSetFactory<T> :
IConstantValueSetFactory
3 implementations of IConstantValueSetFactory
Microsoft.CodeAnalysis.CSharp (3)
Utilities\ValueSetFactory.DecimalValueSetFactory.cs (1)
11
private sealed class DecimalValueSetFactory : IConstantValueSetFactory<decimal>,
IConstantValueSetFactory
Utilities\ValueSetFactory.NintValueSetFactory.cs (1)
13
private sealed class NintValueSetFactory : IConstantValueSetFactory<int>,
IConstantValueSetFactory
Utilities\ValueSetFactory.NuintValueSetFactory.cs (1)
13
private sealed class NuintValueSetFactory : IConstantValueSetFactory<uint>,
IConstantValueSetFactory
62 references to IConstantValueSetFactory
Microsoft.CodeAnalysis.CSharp (56)
Binder\DecisionDagBuilder.cs (2)
1157
var
fac = ValueSetFactory.ForInput(output);
1760
IConstantValueSetFactory
? valueFac = ValueSetFactory.ForInput(input);
Binder\PatternExplainer.cs (1)
727
IConstantValueSet computeRemainingValues(
IConstantValueSetFactory
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
IConstantValueSetFactory
fac = ValueSetFactory.ForInput(input);
562
IConstantValueSetFactory
fac)
621
IConstantValueSetFactory
fac)
706
private readonly
IConstantValueSetFactory
_fac;
Utilities\IConstantValueSetFactory.cs (1)
10
/// A value set factory, which can be used to create a value set instance. A given instance of <see cref="
IConstantValueSetFactory
"/>
Utilities\ValueSetFactory.BoolValueSetFactory.cs (6)
24
IConstantValueSet
IConstantValueSetFactory
.AllValues => BoolValueSet.AllValues;
26
IConstantValueSet
IConstantValueSetFactory
.NoValues => BoolValueSet.None;
42
IConstantValueSet
IConstantValueSetFactory
.Random(int expectedSize, Random random) => random.Next(4) switch
51
ConstantValue
IConstantValueSetFactory
.RandomValue(Random random) => ConstantValue.Create(random.NextDouble() < 0.5);
53
IConstantValueSet
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value)
58
bool
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
Utilities\ValueSetFactory.cs (3)
33
public static
IConstantValueSetFactory
? ForSpecialType(SpecialType specialType, bool isNative = false)
57
public static
IConstantValueSetFactory
? ForType(TypeSymbol type)
65
public static
IConstantValueSetFactory
? ForInput(BoundDagTemp input)
Utilities\ValueSetFactory.DecimalValueSetFactory.cs (6)
17
IConstantValueSet
IConstantValueSetFactory
.AllValues => NumericValueSet<decimal>.AllValues(DecimalTC.Instance);
19
IConstantValueSet
IConstantValueSetFactory
.NoValues => NumericValueSet<decimal>.NoValues(DecimalTC.Instance);
23
IConstantValueSet
IConstantValueSetFactory
.Random(int expectedSize, Random random) => _underlying.Random(expectedSize, random);
25
ConstantValue
IConstantValueSetFactory
.RandomValue(Random random) => ConstantValue.Create(DecimalTC.Instance.Random(random));
27
IConstantValueSet
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value) =>
30
bool
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right) => _underlying.Related(relation, left, right);
Utilities\ValueSetFactory.EnumeratedValueSetFactory.cs (5)
21
IConstantValueSet
IConstantValueSetFactory
.AllValues => EnumeratedValueSet<T>.AllValues(_tc);
23
IConstantValueSet
IConstantValueSetFactory
.NoValues => EnumeratedValueSet<T>.NoValues(_tc);
38
IConstantValueSet
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value) =>
41
bool
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
58
ConstantValue
IConstantValueSetFactory
.RandomValue(Random random)
Utilities\ValueSetFactory.FloatingValueSetFactory.cs (6)
20
IConstantValueSet
IConstantValueSetFactory
.AllValues => FloatingValueSet<TFloating>.AllValues(_tc);
22
IConstantValueSet
IConstantValueSetFactory
.NoValues => FloatingValueSet<TFloating>.NoValues(_tc);
27
IConstantValueSet
IConstantValueSetFactory
.Random(int expectedSize, Random random) =>
30
ConstantValue
IConstantValueSetFactory
.RandomValue(Random random)
35
IConstantValueSet
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value) =>
40
bool
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
Utilities\ValueSetFactory.NintValueSetFactory.cs (6)
19
IConstantValueSet
IConstantValueSetFactory
.AllValues => NintValueSet.AllValues;
21
IConstantValueSet
IConstantValueSetFactory
.NoValues => NintValueSet.NoValues;
32
IConstantValueSet
IConstantValueSetFactory
.Random(int expectedSize, Random random)
41
ConstantValue
IConstantValueSetFactory
.RandomValue(Random random) => ConstantValue.CreateNativeInt(IntTC.DefaultInstance.Random(random));
43
IConstantValueSet
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value)
48
bool
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
Utilities\ValueSetFactory.NonNegativeIntValueSetFactory.cs (4)
53
IConstantValueSet
IConstantValueSetFactory
.Random(int expectedSize, Random random) => s_underlying.Random(expectedSize, random);
55
ConstantValue
IConstantValueSetFactory
.RandomValue(Random random) => s_underlying.RandomValue(random);
57
IConstantValueSet
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value) =>
60
bool
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right) => s_underlying.Related(relation, left, right);
Utilities\ValueSetFactory.NuintValueSetFactory.cs (6)
19
IConstantValueSet
IConstantValueSetFactory
.AllValues => NuintValueSet.AllValues;
21
IConstantValueSet
IConstantValueSetFactory
.NoValues => NuintValueSet.NoValues;
31
IConstantValueSet
IConstantValueSetFactory
.Random(int expectedSize, Random random)
39
ConstantValue
IConstantValueSetFactory
.RandomValue(Random random) => ConstantValue.CreateNativeUInt(UIntTC.Instance.Random(random));
41
IConstantValueSet
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value)
46
bool
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
Utilities\ValueSetFactory.NumericValueSetFactory.cs (5)
23
IConstantValueSet
IConstantValueSetFactory
.AllValues => NumericValueSet<T>.AllValues(_tc);
25
IConstantValueSet
IConstantValueSetFactory
.NoValues => NumericValueSet<T>.NoValues(_tc);
52
IConstantValueSet
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue value) =>
58
ConstantValue
IConstantValueSetFactory
.RandomValue(Random random)
63
bool
IConstantValueSetFactory
.Related(BinaryOperatorKind relation, ConstantValue left, ConstantValue right)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (6)
Utilities\ValueSetTests.cs (6)
594
foreach (
var
fac in new
IConstantValueSetFactory
[] {
618
foreach (
var
fac in new
IConstantValueSetFactory
[] {
855
var ctors = new
IConstantValueSetFactory
[]
876
foreach (
IConstantValueSetFactory
fac in ctors)