public static AsyncFuncBuilder <TContext> WithAsyncConditions <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, IEnumerable <IAsyncCondition <TContext> > asyncConditions) { asyncFuncBuilder.AddStrategy(new AsyncConditions <TContext>(asyncConditions)); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithCondition <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, System.Func <TContext, bool> condition) { asyncFuncBuilder.AddStrategy(new Condition <TContext>(Conditions.Func <TContext> .Create(condition))); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithAsyncCondition <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, IAsyncCondition <TContext> asyncCondition) { asyncFuncBuilder.AddStrategy(new AsyncCondition <TContext>(asyncCondition)); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithAsyncCondition <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, System.Func <TContext, Task <bool> > asyncCondition) { asyncFuncBuilder.AddStrategy( new AsyncCondition <TContext>(AsyncFunc <TContext> .Create(asyncCondition))); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithAction <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, IAction <TContext> action) { asyncFuncBuilder.AddStrategy(new Visitors.Action <TContext>(action)); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithAsyncFunc <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, IAsyncResultFunc <TContext> asyncResultFunc) { asyncFuncBuilder.AddStrategy(new AsyncResultFunc <TContext>(asyncResultFunc)); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithFunc <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, System.Func <TContext, Result> func) { asyncFuncBuilder.AddStrategy(new Visitors.Func <TContext>(func.ToResultFunc())); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithAction <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, System.Action <TContext> action) { asyncFuncBuilder.AddStrategy(new Visitors.Func <TContext>(action.ToResultFunc())); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithFunc <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, IResultFunc <TContext> resultFunc) { asyncFuncBuilder.AddStrategy(new Visitors.Func <TContext>(resultFunc)); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithAsyncConditions <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, IEnumerable <System.Func <TContext, Task <bool> > > asyncConditions) { asyncFuncBuilder.AddStrategy( new AsyncConditions <TContext>(asyncConditions.Select(AsyncFunc <TContext> .Create))); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithEnumerating <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, IEnumerable <System.Action <AsyncFuncBuilder <TContext> > > configuration, IFactory <TContext> factory) { asyncFuncBuilder.AddStrategy(new BuildAsyncActionBuilders <TContext>(configuration, factory)); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithEnumerating <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, IEnumerable <System.Func <IAsyncResultFunc <TContext> > > asyncActions, IFactory <TContext> factory) { asyncFuncBuilder.AddStrategy(new LazyEnumerator <TContext>(asyncActions, factory)); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithAsyncFunc <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, System.Func <TContext, Task <Result> > asyncFunc) { asyncFuncBuilder.AddStrategy( new AsyncResultFunc <TContext>(asyncFunc.ToAsyncResultFunc())); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> WithAsyncFunc <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, Func <TContext, CancellationToken, Task> asyncFunc) { asyncFuncBuilder.AddStrategy( new AsyncResultFunc <TContext>(asyncFunc.ToAsyncFunc().ToAsyncResultFunc())); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TInput> WithAdapter <TInput, TOutput>( this AsyncFuncBuilder <TInput> asyncFuncBuilder, IAsyncAbortableTypeParser <TInput, TOutput> asyncAbortableTypeParser, System.Action <AsyncFuncBuilder <TOutput> > configuration) { asyncFuncBuilder.AddStrategy( new AsyncAdapter <TInput, TOutput>(asyncAbortableTypeParser, configuration)); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TInput> WithAdapter <TInput, TOutput>( this AsyncFuncBuilder <TInput> asyncFuncBuilder, Func <TInput, CancellationToken, Task <Option <Option <TOutput> > > > asyncTypeParser, System.Action <AsyncFuncBuilder <TOutput> > configuration) { asyncFuncBuilder.AddStrategy( new AsyncAdapter <TInput, TOutput>( AsyncFunc <TInput, TOutput> .Create(asyncTypeParser), configuration)); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TInput> WithAdapter <TInput, TOutput>( this AsyncFuncBuilder <TInput> asyncFuncBuilder, System.Func <TInput, Option <Option <TOutput> > > typeParser, System.Action <AsyncFuncBuilder <TOutput> > configuration) { asyncFuncBuilder.AddStrategy( new Adapter <TInput, TOutput>( Parser.Func <TInput, TOutput> .Create(typeParser), configuration)); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> Any <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, IEnumerable <System.Action <AsyncFuncBuilder <TContext> > > configuration, System.Func <Result, bool> predicate) { asyncFuncBuilder.AddStrategy( new BuildAsyncActionBuilders <TContext>( configuration, new AnyFactory <TContext>(predicate))); return(asyncFuncBuilder); }
public static AsyncFuncBuilder <TContext> Any <TContext>( this AsyncFuncBuilder <TContext> asyncFuncBuilder, IEnumerable <IAsyncResultFunc <TContext> > asyncActions, System.Func <Result, bool> predicate) { asyncFuncBuilder.AddStrategy( new Visitors.Enumerator <TContext>( asyncActions, new AnyFactory <TContext>(predicate))); 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 <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); }