Ejemplo n.º 1
0
        /// <summary>
        ///     Retains only the elements in this set that are contained in the
        ///     specified collection.
        /// </summary>
        /// <param name="collection">
        ///     The collection that defines the set of elements to be retained.
        /// </param>
        /// <returns>
        ///     <see langword="true" /> if this set changed as a result of this
        ///     operation.
        /// </returns>
        public override bool RetainAll(ICollection collection)
        {
            //Put data from C into a set so we can use the Contains() method.
            Set cSet = new HybridSet(collection);

            //We are going to build a set of elements to remove.
            Set removeSet = new HybridSet();

            foreach (var o in this)
            {
                //If C does not contain O, then we need to remove O from our
                //set.  We can't do this while iterating through our set, so
                //we put it into RemoveSet for later.
                if (!cSet.Contains(o))
                {
                    removeSet.Add(o);
                }
            }
            return(RemoveAll(removeSet));
        }
Ejemplo n.º 2
0
 public override void SetUp()
 {
     Set = new HybridSet ();
     SetForSetOps = new HybridSet ();
 }