예제 #1
0
        public void Clear()
        {
            var b = set.Count > 0;

            set.Clear();

            if (b)
            {
                OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Reset));
            }
        }
예제 #2
0
    public bool Initialize(Node _start, Node _goal)
    {
        if (!NodeManager.Instance.Contains(_start, _goal))
        {
            return(false);
        }

        start = _start;
        goal  = _goal;
        open.Clear();
        closed.Clear();
        foreach (List <Node> list in map)
        {
            foreach (Node node in list)
            {
                if (node != null)
                {
                    node.g      = float.MaxValue;
                    node.h      = Heuristic(node, goal);
                    node.parent = null;
                }
            }
        }
        start.g = 0f;
        start.CalcF();
        open.Add(start);
        return(true);
    }
예제 #3
0
 /// Clears all collected entities.
 public void ClearCollectedEntities()
 {
     foreach (var entity in _collectedEntities)
     {
         entity.Release(this);
     }
     _collectedEntities.Clear();
 }
예제 #4
0
        public void ClearTest()
        {
            OrderedSet<int> actual = new OrderedSet<int> {15, 16, 89};

            actual.Clear();

            Assert.AreEqual(0, actual.Count);
        }
예제 #5
0
        public void ClearTest()
        {
            OrderedSet <int> actual = new OrderedSet <int> {
                15, 16, 89
            };

            actual.Clear();

            Assert.AreEqual(0, actual.Count);
        }
예제 #6
0
        public void AddTest([PexAssumeUnderTest]HashSet<int> newelements)
        {
            OrderedSet<int> actual = new OrderedSet<int>(newelements);
            PexAssert.AreEqual(newelements.Count, actual.Count);

            foreach (int elem in newelements)
                PexAssert.IsTrue(actual.Contains(elem));

            actual.Clear();
            PexAssert.AreEqual(0, actual.Count);
        }
예제 #7
0
        public void ClearAllItems()
        {
            var set = new OrderedSet <int> {
                1, 2, 3
            };

            set.Clear();
            Assert.Equal(set.Count, 0);
            Assert.False(set.Contains(1));
            Assert.False(set.Contains(2));
            Assert.False(set.Contains(3));
        }
예제 #8
0
        public void AssertThat_AfterClear_SetDoesNotContainItems()
        {
            for (var i = 0; i < 100; i++)
            {
                _set.Add(i);
            }

            _set.Clear();

            for (var i = 0; i < 100; i++)
            {
                Assert.IsFalse(_set.Contains(i));
            }
        }
예제 #9
0
        /// Summary
        /// Time: 14 min 15 sec
        /// Pattern: Constructor Test, State Relation
        /// Generalizes four unit tests AddTest, ClearTest, ContainsTest, CopyIEnumerableToSetTest into one PUT
        public void AddTest([PexAssumeUnderTest] HashSet <int> newelements)
        {
            OrderedSet <int> actual = new OrderedSet <int>(newelements);

            PexAssert.AreEqual(newelements.Count, actual.Count);

            foreach (int elem in newelements)
            {
                PexAssert.IsTrue(actual.Contains(elem));
            }

            actual.Clear();
            PexAssert.AreEqual(0, actual.Count);
        }
예제 #10
0
    /// <summary>
    /// Applies the value to the node when it is the only possible result.
    /// </summary>
    /// <param name="n">node</param>
    /// <param name="v">value</param>
    public bool ApplyValue(int v = 0)
    {
        // Set value on SNode
        if (v == 0 && Possibles.Count == 1)
        {
            v = Possibles[0];
        }

        Possibles.Clear();
        Value    = v;
        IsSolved = true;
        Row.ValueSolved(v);
        Column.ValueSolved(v);
        Box.ValueSolved(v);

        if (v < 1 || v > 9)
        {
            return(false);
        }

        // Adjust all nodes in row, column, and box [based on this change].
        foreach (SNode sNode in Row.Trim())
        {
            // Checking if it's also already false, if so, we don't enter this if
            if (sNode != this && sNode.Possibles.Contains(Value))
            {
                sNode.Possibles.Remove(v);
            }
        }

        foreach (SNode sNode in Column.Trim())
        {
            // Checking if it's also already false, if so, we don't enter this if
            if (sNode != this && sNode.Possibles.Contains(Value))
            {
                sNode.Possibles.Remove(v);
            }
        }

        foreach (SNode sNode in Box.Trim())
        {
            // Checking if it's also already false, if so, we don't enter this if
            if (sNode != this && sNode.Possibles.Contains(Value))
            {
                sNode.Possibles.Remove(v);
            }
        }

        return(true);
    } // ApplyValue()
예제 #11
0
        /// Destroys all entities in the context.
        /// Throws an exception if there are still retained entities.
        public void DestroyAllEntities()
        {
            var entities = GetEntities();

            for (int i = 0; i < entities.Length; i++)
            {
                entities[i].Destroy();
            }

            _entities.Clear();
            Array.Clear(_sortedEntities, 0, _sortedEntities.Length);

            if (_retainedEntities.Count != 0)
            {
                throw new ContextStillHasRetainedEntitiesException(this, _retainedEntities.ToArray());
            }
        }
 internal void Clear()
 {
     globalObjectIdSet.Clear();
     activeObjects.Clear();
 }
예제 #13
0
 public void Clear()
 {
     _set.Clear();
 }
예제 #14
0
 internal void Clear()
 {
     _set.Clear();
 }
예제 #15
0
    static void Main()
    {
        var set = new OrderedSet <int>();

        Console.WriteLine("Add: 29, 11, 35, 7, 16, 23, 37, 17");
        set.Add(29);
        set.Add(11);
        set.Add(35);
        set.Add(7);
        set.Add(16);
        set.Add(23);
        set.Add(37);
        set.Add(17);

        Console.WriteLine();

        Console.WriteLine("In-order print: ");
        set.PrintInorder(set.Root);

        Console.WriteLine();
        Console.WriteLine();

        Console.WriteLine("Foreach: ");
        foreach (var item in set)
        {
            Console.Write(item + " ");
        }

        Console.WriteLine();
        Console.WriteLine();

        Console.WriteLine("EachInOrder(Action<T> action): ");
        set.EachInOrder(n => Console.Write(n + " "));

        Console.WriteLine();
        Console.WriteLine();

        Console.WriteLine("Insert 23: ");
        set.Add(23);
        set.EachInOrder(n => Console.Write(n + " "));

        Console.WriteLine();
        Console.WriteLine();

        Console.WriteLine("Remove 16: ");
        set.Remove(16);
        set.EachInOrder(n => Console.Write(n + " "));

        Console.WriteLine();
        Console.WriteLine();

        Console.WriteLine("Find 7: ");
        var find7 = set.Find(7) != null ? "7" : "null";

        Console.WriteLine(find7);


        Console.WriteLine();

        Console.WriteLine("Find 200: ");
        var find200 = set.Find(200) != null ? "200" : "null";

        Console.WriteLine(find200);

        Console.WriteLine();

        Console.WriteLine("Contains 7: ");
        var contains7 = set.Contains(7) == true ? "true" : "false";

        Console.WriteLine(contains7);

        Console.WriteLine();

        Console.WriteLine("Contains 200: ");
        var contains200 = set.Contains(200) == true ? "true" : "false";

        Console.WriteLine(contains200);

        Console.WriteLine();

        Console.WriteLine("Count:");
        Console.WriteLine(set.Count);

        Console.WriteLine(
            "Count after Add and Remove: Add 1, Remove 23, Add 5, " +
            "Add 14, Add 108, Remove 5, Remove 12 (no such value)");
        set.Add(1);
        set.Remove(23);
        set.Add(5);
        set.Add(14);
        set.Add(108);
        set.Remove(5);
        set.Remove(12);// no such value
        Console.WriteLine("Count: {0}", set.Count);
        set.EachInOrder(n => Console.Write(n + " "));

        Console.WriteLine();
        Console.WriteLine();

        Console.WriteLine("Min value: {0}", set.Min());

        Console.WriteLine();

        Console.WriteLine("Min value: {0}", set.Max());

        Console.WriteLine();

        set.Clear();
        Console.WriteLine("Clear: {0} (Count)", set.Count);
    }
예제 #16
0
 public static void PushIntHashSet(OrderedSet <int> hashSet)
 {
     hashSet.Clear(); _cache.Push(hashSet);
 }
예제 #17
0
        public static void Main(string[] args)
        {
            var set = new OrderedSet<int>();
            Console.WriteLine("Add numbers --> 19, 21, 55, 27, 66, 33, 17, 85");
            set.Add(19);
            set.Add(21);
            set.Add(55);
            set.Add(27);
            set.Add(66);
            set.Add(33);
            set.Add(17);
            set.Add(85);
            Console.WriteLine();
            Console.WriteLine("In-order print --> ");
            set.PrintInOrder(set.Root);
            Console.WriteLine();
            Console.WriteLine("Foreach --> ");
            foreach (var item in set)
            {
                Console.Write(item + " ");
            }

            Console.WriteLine();
            Console.WriteLine("EachInOrder(Action<T> action) --> ");
            set.EachInOrder(n => Console.Write(n + " "));
            Console.WriteLine();
            Console.WriteLine("Insert 44 --> ");
            set.Add(44);
            set.EachInOrder(n => Console.Write(n + " "));
            Console.WriteLine();
            Console.WriteLine("Remove 66 --> ");
            set.Remove(66);
            set.EachInOrder(n => Console.Write(n + " "));
            Console.WriteLine();
            Console.WriteLine("Find 17 --> ");
            var find17 = set.Find(17) != null ? "17" : "null";
            Console.WriteLine(find17);
            Console.WriteLine();
            Console.WriteLine("Find 200 --> ");
            var find200 = set.Find(200) != null ? "200" : "null";
            Console.WriteLine(find200);
            Console.WriteLine();
            Console.WriteLine("Contains 44 --> ");
            var contains44 = set.Contains(44) == true ? "true" : "false";
            Console.WriteLine(contains44);
            Console.WriteLine();
            Console.WriteLine("Contains 200 --> ");
            var contains200 = set.Contains(200) == true ? "true" : "false";
            Console.WriteLine(contains200);
            Console.WriteLine();
            Console.WriteLine("Count --> ");
            Console.WriteLine(set.Count);
            Console.WriteLine(
            "Count after Add and Remove: Add 11, Remove 55, Add 5, Add 84, Add 18, Remove 5, Remove 18 (no such value)");
            set.Add(11);
            set.Remove(55);
            set.Add(5);
            set.Add(84);
            set.Add(18);
            set.Remove(5);
            set.Remove(18);
            Console.WriteLine("Count --> {0}", set.Count);
            set.EachInOrder(n => Console.Write(n + " "));
            Console.WriteLine();
            Console.WriteLine("Min value --> {0}", set.Min());
            Console.WriteLine();
            Console.WriteLine("Min value --> {0}", set.Max());
            Console.WriteLine();
            set.Clear();
            Console.WriteLine("Clear --> {0} (Count)", set.Count);
        }