Example #1
0
        public static StringSet operator +(StringSet first, StringSet second)
        {
            var result = new StringSet();

            CopyItems(first, result);
            CopyItems(second, result);

            return result;
        }
Example #2
0
        public static StringSet operator -(StringSet first, StringSet second)
        {
            var result = new StringSet();

            foreach (var item in first._items) {
                if (second._items.Contains(item))
                    result.Add(item);
            }

            return result;
        }
Example #3
0
 private static void CopyItems(StringSet source, StringSet destination)
 {
     foreach (var item in source._items) {
         destination.Add(item);
     }
 }
Example #4
0
 public StringSet Union(StringSet second)
 {
     return this + second;
 }
Example #5
0
 public StringSet Intersect(StringSet second)
 {
     return this - second;
 }