예제 #1
0
        public void SnocTest()
        {
            var queue = BankersDeque <string> .Empty;

            queue = BankersDeque <string> .Snoc(queue, "Head");

            queue = BankersDeque <string> .Snoc(queue, "Last");

            Assert.AreEqual("[1, {$Head}, 1, {$Last}]", DumpQueue(queue, true));
        }
예제 #2
0
        public void EmptyTest()
        {
            var queue = BankersDeque <string> .Empty;

            Assert.IsTrue(BankersDeque <string> .IsEmpty(queue));

            queue = BankersDeque <string> .Cons("Head", queue);

            Assert.IsFalse(BankersDeque <string> .IsEmpty(queue));
            queue = BankersDeque <string> .Tail(queue);

            Assert.IsTrue(BankersDeque <string> .IsEmpty(queue));

            queue = BankersDeque <string> .Snoc(queue, "Tail");

            Assert.IsFalse(BankersDeque <string> .IsEmpty(queue));
            queue = BankersDeque <string> .Init(queue);

            Assert.IsTrue(BankersDeque <string> .IsEmpty(queue));
        }