コード例 #1
0
        private static void Skip(ref FuncContext <T> context, out Option <T> next)
        {
            context.bd.DetectBacktrack();

            if (context.needsMove)
            {
                context.acc = context.selector(context.acc);
            }
            else
            {
                context.needsMove = true;
            }
            next = new Option <T>(context.acc);
        }
コード例 #2
0
 private static void Dispose(ref FuncContext <T> context, out Option <T> next)
 {
     next = new Option <T>();
     context.bd.Release();
 }
コード例 #3
0
 private static void Remove(ref FuncContext <T> context, out Option <T> next)
 {
     throw new NotSupportedException();
 }