1 interface inheriting from IValueSet
Microsoft.CodeAnalysis.CSharp (1)
Utilities\IValueSet.cs (1)
34
internal interface IConstantValueSet :
IValueSet
3 implementations of IValueSet
Microsoft.CodeAnalysis.CSharp (3)
Utilities\TypeUnionValueSet.cs (1)
19
internal sealed class TypeUnionValueSet :
IValueSet
Utilities\ValueSetFactory.NintValueSet.cs (1)
15
private sealed class NintValueSet : IConstantValueSet<int>,
IValueSet
Utilities\ValueSetFactory.NuintValueSet.cs (1)
15
private sealed class NuintValueSet : IConstantValueSet<uint>,
IValueSet
107 references to IValueSet
Microsoft.CodeAnalysis.CSharp (107)
Binder\DecisionDagBuilder.cs (46)
1298
DagState uniquifyState(FrozenArrayBuilder<StateForCase> cases, ImmutableDictionary<BoundDagTemp,
IValueSet
> remainingValues)
1311
var newRemainingValues = ImmutableDictionary.CreateBuilder<BoundDagTemp,
IValueSet
>();
1316
if (existingState.RemainingValues.TryGetValue(dagTemp, out
var
existingValuesForTemp))
1318
var
newExistingValuesForTemp = existingValuesForTemp.Union(valuesForTemp);
1324
!existingState.RemainingValues.All(kv => newRemainingValues.TryGetValue(kv.Key, out
IValueSet
? values) && kv.Value.Equals(values)))
1357
ImmutableDictionary<BoundDagTemp,
IValueSet
>.Empty);
1699
IValueSet
? whenTrueValues,
1700
IValueSet
? whenFalseValues,
1714
out ImmutableDictionary<BoundDagTemp,
IValueSet
> whenTrueValues,
1716
out ImmutableDictionary<BoundDagTemp,
IValueSet
> whenFalseValues,
1728
whenTrueValues.TryGetValue(test.Input, out
IValueSet
? whenTrueValuesOpt);
1729
whenFalseValues.TryGetValue(test.Input, out
IValueSet
? whenFalseValuesOpt);
1751
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenTrueValues,
1752
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenFalseValues,
1756
ImmutableDictionary<BoundDagTemp,
IValueSet
> values,
1778
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenTrueValues,
1779
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenFalseValues,
1797
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenTrueValues,
1798
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenFalseValues,
1801
splitValues<TValueSet>(ImmutableDictionary<BoundDagTemp,
IValueSet
> values, BoundDagTemp input, TValueSet fromTestPassing) where TValueSet :
IValueSet
1804
if (values.TryGetValue(input, out
IValueSet
? tempValuesBeforeTest))
1815
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenTrueValues,
1816
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenFalseValues,
1841
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenTrueValues,
1842
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenFalseValues,
1862
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenTrueValues,
1863
ImmutableDictionary<BoundDagTemp,
IValueSet
> whenFalseValues,
1953
IValueSet
? whenTrueValues,
1954
IValueSet
? whenFalseValues,
2118
IValueSet
? whenFalseValues,
3024
public ImmutableDictionary<BoundDagTemp,
IValueSet
> RemainingValues { get; private set; } = null!;
3053
public static DagState GetInstance(FrozenArrayBuilder<StateForCase> cases, ImmutableDictionary<BoundDagTemp,
IValueSet
> remainingValues)
3097
internal void UpdateRemainingValues(ImmutableDictionary<BoundDagTemp,
IValueSet
> newRemainingValues)
3241
IValueSet
? whenTrueValues,
3242
IValueSet
? whenFalseValues,
3384
IValueSet
? whenTrueValues,
3385
IValueSet
? whenFalseValues,
3408
IValueSet
? whenTrueValues,
3409
IValueSet
? whenFalseValues,
3435
IValueSet
? whenTrueValues,
3436
IValueSet
? whenFalseValues,
4039
IValueSet
? whenTrueValues,
4040
IValueSet
? whenFalseValues,
4066
IValueSet
? whenTrueValues,
4067
IValueSet
? whenFalseValues,
Utilities\IValueSet.cs (6)
21
IValueSet
Intersect(
IValueSet
other);
26
IValueSet
Union(
IValueSet
other);
31
IValueSet
Complement();
66
/// An interface representing a set of values of a specific type. Like <see cref="
IValueSet
"/> but strongly typed to <typeparamref name="T"/>.
Utilities\TypeUnionValueSet.cs (8)
319
IValueSet
IValueSet
.Complement()
324
IValueSet
IValueSet
.Intersect(
IValueSet
other)
329
IValueSet
IValueSet
.Union(
IValueSet
other)
Utilities\ValueSetFactory.BoolValueSet.cs (7)
75
IValueSet
IValueSet
.Complement() => this.Complement();
85
public
IValueSet
Intersect(
IValueSet
other) => this.Intersect((IConstantValueSet<bool>)other);
95
IValueSet
IValueSet
.Union(
IValueSet
other) => this.Union((IConstantValueSet<bool>)other);
Utilities\ValueSetFactory.EnumeratedValueSet.cs (8)
115
IValueSet
IValueSet
.Complement() => this.Complement();
138
IValueSet
IValueSet
.Intersect(
IValueSet
other) => Intersect((IConstantValueSet<T>)other);
161
IValueSet
IValueSet
.Union(
IValueSet
other) => Union((IConstantValueSet<T>)other);
Utilities\ValueSetFactory.FloatingValueSet.cs (8)
111
IValueSet
IValueSet
.Intersect(
IValueSet
other) => this.Intersect((IConstantValueSet<TFloating>)other);
126
IValueSet
IValueSet
.Union(
IValueSet
other) => this.Union((IConstantValueSet<TFloating>)other);
136
IValueSet
IValueSet
.Complement() => this.Complement();
Utilities\ValueSetFactory.NintValueSet.cs (8)
96
IValueSet
IValueSet
.Complement() => this.Complement();
108
IValueSet
IValueSet
.Intersect(
IValueSet
other) => this.Intersect((NintValueSet)other);
120
IValueSet
IValueSet
.Union(
IValueSet
other) => this.Union((NintValueSet)other);
Utilities\ValueSetFactory.NuintValueSet.cs (8)
82
IValueSet
IValueSet
.Complement() => this.Complement();
93
IValueSet
IValueSet
.Intersect(
IValueSet
other) => this.Intersect((NuintValueSet)other);
104
IValueSet
IValueSet
.Union(
IValueSet
other) => this.Union((NuintValueSet)other);
Utilities\ValueSetFactory.NumericValueSet.cs (8)
160
IValueSet
IValueSet
.Complement() => this.Complement();
237
IValueSet
IValueSet
.Intersect(
IValueSet
other) => this.Intersect((IConstantValueSet<T>)other);
288
IValueSet
IValueSet
.Union(
IValueSet
other) => this.Union((IConstantValueSet<T>)other);