Пример #1
0
            public void TestIntersectWithEdgeCase()
            {
                EqualityComparer <int> equalityComparer = EqualityComparer <int> .Default;
                Func <int, int>        getHashCode      = value => Math.Abs(value) < 5 ? 0 : 1;

                ImmutableTreeSet <int> .Builder set   = ImmutableTreeSet.CreateBuilder(new SubsetHashCodeEqualityComparer <int>(equalityComparer, getHashCode));
                ImmutableTreeSet <int> .Builder other = ImmutableTreeSet.CreateBuilder(set.KeyComparer);

                set.UnionWith(Enumerable.Range(0, 10));
                other.UnionWith(new[] { 4, 3, 5 });
                set.IntersectWith(other);
                Assert.Equal(new[] { 3, 4, 5 }, set);
            }