示例#1
0
        private static bool _Run()
        {
            bool result  = true;
            int  current = 0;
            int  last    = 0;
            IStatelessChain <int> statelessChain = StatelessChain <int> .Create((x) => x < 3, F.DoNothing <int>);

            while (null != statelessChain)
            {
                last = current;
                current++;
                statelessChain = statelessChain.Run(current);
            }
            result = result.And(F.equ_int(last, 2));
            int count = 0;
            IStatefulChain <int> statefulChain = StatefulChain <int> .Create((x) => x < 3, (y) => { count++; }, (v) => v + 1, 0);

            while (null != statefulChain)
            {
                statefulChain = statefulChain.Run();
            }
            result = result && (count == 3);
            return(result);
        }
示例#2
0
 public static IStatelessChain <T, U> Run <U>(IStatelessChain <T, U> item, T t, U u)
 {
     return(item.Run(t, u));
 }
示例#3
0
 public static IStatelessChain <T, U, V> Run <U, V>(IStatelessChain <T, U, V> item, T t, U u, V v)
 {
     return(item.Run(t, u, v));
 }
示例#4
0
 public static IStatelessChain <T> Run(IStatelessChain <T> item, T t)
 {
     return(item.Run(t));
 }