AsyncDolls.Pipeline.Incoming.IncomingPipeline.InvokeLogical C# (CSharp) Method

InvokeLogical() private method

private InvokeLogical ( AsyncDolls.Pipeline.Incoming.IncomingLogicalContext context, IBusForHandler bus, int currentIndex ) : System.Threading.Tasks.Task
context AsyncDolls.Pipeline.Incoming.IncomingLogicalContext
bus IBusForHandler
currentIndex int
return System.Threading.Tasks.Task
        Task InvokeLogical(IncomingLogicalContext context, IBusForHandler bus, int currentIndex = 0)
        {
            if (currentIndex == registeredLogicalPipeline.Count)
            {
                return Task.CompletedTask;
            }

            IIncomingLogicalStep step = registeredLogicalPipeline[currentIndex];

            return step.Invoke(context, bus, () => InvokeLogical(context, bus, currentIndex + 1));
        }