Exemple #1
0
            public override Terminator <TReduction> Complete(TReduction reduction)
            {
                var terminator = Next.Invoke(reduction, Accumulation);

                return(terminator.IsTerminated
                    ? terminator
                    : Next.Complete(terminator.Value));
            }
        public void Complete()
        {
            this.IsComplete = true;

            if (Next != null)
            {
                Next.Complete();
            }
        }
Exemple #3
0
 /// <summary>
 /// Called when input is exhausted.
 /// </summary>
 /// <param name="reduction">The current reduction.</param>
 /// <returns>
 /// A wrapped reduction.
 /// </returns>
 public override Terminator <TReduction> Complete(TReduction reduction) => Next.Complete(reduction);