Aardvark.Base.SortedSetExt.UnionWith(System.Collections.Generic.IEnumerable)

Here are the examples of the csharp api class Aardvark.Base.SortedSetExt.UnionWith(System.Collections.Generic.IEnumerable) taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

1 Example 7

1. Example

Project: aardvark.base
Source File: SortedSetExt.cs
public void SymmetricExceptWith(IEnumerable<T> other)
        {
            if (other == null)
            {
                throw new ArgumentNullException("other");
            }

            if (this.Count == 0)
            {
                this.UnionWith(other);
                return;
            }

            if (other == this)
            {
                this.Clear();
                return;
            }


            SortedSetExt<T> asSorted = other as SortedSetExt<T>;

            if (asSorted != null && AreComparersEqual(this, asSorted))
            {
                SymmetricExceptWithSameEC(asSorted);
            }
            else
            {
                //need perf improvement on this
                T[] elements = (new List<T>(other)).ToArray();
                Array.Sort(elements, this.Comparer);
                SymmetricExceptWithSameEC(elements);
            }
        }