示例#1
0
        public void YielderBase()
        {
            var yielder = Yielder.Const(7);

            Assert.Equal(7, yielder.Next());
            Assert.Equal(7, yielder.Next());
            Assert.Equal(7, yielder.Next());
            Assert.Equal(7, yielder.Next());

            int x = 1;

            yielder = Yielder.Repeat(() => x *= 2);
            Assert.Equal(2, yielder.Next());
            Assert.Equal(4, yielder.Next());
            Assert.Equal(8, yielder.Next());
            Assert.Equal(16, yielder.Next());

            yielder = Yielder.Iterate(v => v * 3, 1);
            Assert.Equal(3, yielder.Next());
            Assert.Equal(9, yielder.Next());
            Assert.Equal(27, yielder.Next());
            Assert.Equal(81, yielder.Next());
        }