1 interface inheriting from IValueSet
Microsoft.CodeAnalysis.CSharp (1)
Utilities\IValueSet.cs (1)
34internal interface IConstantValueSet : IValueSet
3 implementations of IValueSet
Microsoft.CodeAnalysis.CSharp (3)
Utilities\TypeUnionValueSet.cs (1)
19internal sealed class TypeUnionValueSet : IValueSet
Utilities\ValueSetFactory.NintValueSet.cs (1)
15private sealed class NintValueSet : IConstantValueSet<int>, IValueSet
Utilities\ValueSetFactory.NuintValueSet.cs (1)
15private sealed class NuintValueSet : IConstantValueSet<uint>, IValueSet
110 references to IValueSet
Microsoft.CodeAnalysis.CSharp (110)
Binder\DecisionDagBuilder.cs (49)
1307DagState uniquifyState(FrozenArrayBuilder<StateForCase> cases, ImmutableDictionary<BoundDagTemp, IValueSet> remainingValues) 1320var newRemainingValues = ImmutableDictionary.CreateBuilder<BoundDagTemp, IValueSet>(); 1325if (existingState.RemainingValues.TryGetValue(dagTemp, out var existingValuesForTemp)) 1327var newExistingValuesForTemp = existingValuesForTemp.Union(valuesForTemp); 1333!existingState.RemainingValues.All(kv => newRemainingValues.TryGetValue(kv.Key, out IValueSet? values) && kv.Value.Equals(values))) 1366ImmutableDictionary<BoundDagTemp, IValueSet>.Empty); 1708IValueSet? whenTrueValues, 1709IValueSet? whenFalseValues, 1723out ImmutableDictionary<BoundDagTemp, IValueSet> whenTrueValues, 1725out ImmutableDictionary<BoundDagTemp, IValueSet> whenFalseValues, 1737whenTrueValues.TryGetValue(test.Input, out IValueSet? whenTrueValuesOpt); 1738whenFalseValues.TryGetValue(test.Input, out IValueSet? whenFalseValuesOpt); 1760ImmutableDictionary<BoundDagTemp, IValueSet> whenTrueValues, 1761ImmutableDictionary<BoundDagTemp, IValueSet> whenFalseValues, 1765ImmutableDictionary<BoundDagTemp, IValueSet> values, 1787ImmutableDictionary<BoundDagTemp, IValueSet> whenTrueValues, 1788ImmutableDictionary<BoundDagTemp, IValueSet> whenFalseValues, 1806ImmutableDictionary<BoundDagTemp, IValueSet> whenTrueValues, 1807ImmutableDictionary<BoundDagTemp, IValueSet> whenFalseValues, 1810splitValues<TValueSet>(ImmutableDictionary<BoundDagTemp, IValueSet> values, BoundDagTemp input, TValueSet fromTestPassing) where TValueSet : IValueSet 1813if (values.TryGetValue(input, out IValueSet? tempValuesBeforeTest)) 1824ImmutableDictionary<BoundDagTemp, IValueSet> whenTrueValues, 1825ImmutableDictionary<BoundDagTemp, IValueSet> whenFalseValues, 1850ImmutableDictionary<BoundDagTemp, IValueSet> whenTrueValues, 1851ImmutableDictionary<BoundDagTemp, IValueSet> whenFalseValues, 1871ImmutableDictionary<BoundDagTemp, IValueSet> whenTrueValues, 1872ImmutableDictionary<BoundDagTemp, IValueSet> whenFalseValues, 1962IValueSet? whenTrueValues, 1963IValueSet? whenFalseValues, 2126IValueSet? whenFalseValues, 3033public ImmutableDictionary<BoundDagTemp, IValueSet> RemainingValues { get; private set; } = null!; 3062public static DagState GetInstance(FrozenArrayBuilder<StateForCase> cases, ImmutableDictionary<BoundDagTemp, IValueSet> remainingValues) 3106internal void UpdateRemainingValues(ImmutableDictionary<BoundDagTemp, IValueSet> newRemainingValues) 3252IValueSet? whenTrueValues, 3253IValueSet? whenFalseValues, 3395IValueSet? whenTrueValues, 3396IValueSet? whenFalseValues, 3419IValueSet? whenTrueValues, 3420IValueSet? whenFalseValues, 3446IValueSet? whenTrueValues, 3447IValueSet? whenFalseValues, 4057IValueSet? whenTrueValues, 4058IValueSet? whenFalseValues, 4128private Tests ComputeFilteredResult(IValueSet? possibleValues) 4226IValueSet? whenTrueValues, 4227IValueSet? whenFalseValues, 4253IValueSet? whenTrueValues, 4254IValueSet? whenFalseValues,
Utilities\IValueSet.cs (6)
21IValueSet Intersect(IValueSet other); 26IValueSet Union(IValueSet other); 31IValueSet 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)
342IValueSet IValueSet.Complement() 347IValueSet IValueSet.Intersect(IValueSet other) 352IValueSet IValueSet.Union(IValueSet other)
Utilities\ValueSetFactory.BoolValueSet.cs (7)
75IValueSet IValueSet.Complement() => this.Complement(); 85public IValueSet Intersect(IValueSet other) => this.Intersect((IConstantValueSet<bool>)other); 95IValueSet IValueSet.Union(IValueSet other) => this.Union((IConstantValueSet<bool>)other);
Utilities\ValueSetFactory.EnumeratedValueSet.cs (8)
115IValueSet IValueSet.Complement() => this.Complement(); 138IValueSet IValueSet.Intersect(IValueSet other) => Intersect((IConstantValueSet<T>)other); 161IValueSet IValueSet.Union(IValueSet other) => Union((IConstantValueSet<T>)other);
Utilities\ValueSetFactory.FloatingValueSet.cs (8)
111IValueSet IValueSet.Intersect(IValueSet other) => this.Intersect((IConstantValueSet<TFloating>)other); 126IValueSet IValueSet.Union(IValueSet other) => this.Union((IConstantValueSet<TFloating>)other); 136IValueSet IValueSet.Complement() => this.Complement();
Utilities\ValueSetFactory.NintValueSet.cs (8)
96IValueSet IValueSet.Complement() => this.Complement(); 108IValueSet IValueSet.Intersect(IValueSet other) => this.Intersect((NintValueSet)other); 120IValueSet IValueSet.Union(IValueSet other) => this.Union((NintValueSet)other);
Utilities\ValueSetFactory.NuintValueSet.cs (8)
82IValueSet IValueSet.Complement() => this.Complement(); 93IValueSet IValueSet.Intersect(IValueSet other) => this.Intersect((NuintValueSet)other); 104IValueSet IValueSet.Union(IValueSet other) => this.Union((NuintValueSet)other);
Utilities\ValueSetFactory.NumericValueSet.cs (8)
160IValueSet IValueSet.Complement() => this.Complement(); 237IValueSet IValueSet.Intersect(IValueSet other) => this.Intersect((IConstantValueSet<T>)other); 288IValueSet IValueSet.Union(IValueSet other) => this.Union((IConstantValueSet<T>)other);