7 implementations of Complement
Microsoft.CodeAnalysis.CSharp (7)
Utilities\TypeUnionValueSet.cs (1)
276IValueSet IValueSet.Complement()
Utilities\ValueSetFactory.BoolValueSet.cs (1)
75IValueSet IValueSet.Complement() => this.Complement();
Utilities\ValueSetFactory.EnumeratedValueSet.cs (1)
115IValueSet IValueSet.Complement() => this.Complement();
Utilities\ValueSetFactory.FloatingValueSet.cs (1)
136IValueSet IValueSet.Complement() => this.Complement();
Utilities\ValueSetFactory.NintValueSet.cs (1)
96IValueSet IValueSet.Complement() => this.Complement();
Utilities\ValueSetFactory.NuintValueSet.cs (1)
82IValueSet IValueSet.Complement() => this.Complement();
Utilities\ValueSetFactory.NumericValueSet.cs (1)
160IValueSet IValueSet.Complement() => this.Complement();
57 references to Complement
Microsoft.CodeAnalysis.CSharp (5)
Binder\DecisionDagBuilder.cs (3)
1163else if (((IConstantValueSet?)values?.Complement())?.IsEmpty != true) 1778var fromTestFailing = (TValueSet)fromTestPassing.Complement(); 3501if (((IConstantValueSet)lengthValues.Complement().Intersect(possibleValues)).IsEmpty)
Binder\PatternExplainer.cs (2)
567if (((IConstantValueSet)remainingValues.Complement()).IsEmpty) 749filtered = (IConstantValueSet)filtered.Complement();
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (52)
Utilities\ValueSetTests.cs (52)
434var s3 = b.Complement().Intersect(s2.Complement()); 436var s4 = b.Union(s2).Complement(); 606var u2 = s1.Complement().Intersect(s2.Complement()).Complement(); 609var i2 = s1.Complement().Union(s2.Complement()).Complement(); 629Assert.Equal(s1.Complement(), s2); 630Assert.Equal(s2.Complement(), s1); 640Assert.Equal(s1.Complement(), s2); 641Assert.Equal(s2.Complement(), s1); 660Assert.Equal(s1.Complement().Complement(), s1); 663var u2 = s1.Complement().Intersect(s2.Complement()).Complement(); 665var u4 = s2.Complement().Intersect(s1.Complement()).Complement(); 671var i2 = s1.Complement().Union(s2.Complement()).Complement(); 673var i4 = s2.Complement().Union(s1.Complement()).Complement(); 678s1 = (IConstantValueSet)s1.Complement(); 681u2 = s1.Complement().Intersect(s2.Complement()).Complement(); 683u4 = s2.Complement().Intersect(s1.Complement()).Complement(); 689i2 = s1.Complement().Union(s2.Complement()).Complement(); 691i4 = s2.Complement().Union(s1.Complement()).Complement(); 696s2 = (IConstantValueSet)s2.Complement(); 699u2 = s1.Complement().Intersect(s2.Complement()).Complement(); 701u4 = s2.Complement().Intersect(s1.Complement()).Complement(); 707i2 = s1.Complement().Union(s2.Complement()).Complement(); 709i4 = s2.Complement().Union(s1.Complement()).Complement();