public static AsyncFuncBuilder <TContext> All <TContext>(
            this AsyncFuncBuilder <TContext> asyncFuncBuilder,
            IEnumerable <IAsyncResultFunc <TContext> > asyncActions,
            System.Func <Result, bool> predicate,
            bool shortCircuiting = true)
        {
            IFactory <TContext> factory;

            if (shortCircuiting)
            {
                factory = new AllFactory <TContext>(predicate);
            }
            else
            {
                factory = new ContinuingAllFactory <TContext>(predicate);
            }

            asyncFuncBuilder.AddStrategy(new Visitors.Enumerator <TContext>(asyncActions, factory));

            return(asyncFuncBuilder);
        }
        public static AsyncFuncBuilder <TContext> All <TContext>(
            this AsyncFuncBuilder <TContext> asyncFuncBuilder,
            IEnumerable <System.Action <AsyncFuncBuilder <TContext> > > configuration,
            System.Func <Result, bool> predicate,
            bool shortCircuiting = true)
        {
            IFactory <TContext> factory;

            if (shortCircuiting)
            {
                factory = new AllFactory <TContext>(predicate);
            }
            else
            {
                factory = new ContinuingAllFactory <TContext>(predicate);
            }

            asyncFuncBuilder.AddStrategy(new BuildAsyncActionBuilders <TContext>(configuration, factory));

            return(asyncFuncBuilder);
        }
 public static AsyncFuncBuilder <TInput> WithAdapter <TInput, TOutput>(
     this AsyncFuncBuilder <TInput> asyncFuncBuilder,
     Func <TInput, CancellationToken, Task <(bool, Option <TOutput>)> > asyncTypeParser,