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);
        }