/// <summary>
 /// Keeps repeating the computation until it fails
 /// </summary>
 /// <param name="schedule">Scheduler strategy for repeating</param>
 /// <param name="ma">Computation to repeat</param>
 /// <typeparam name="RT">Runtime</typeparam>
 /// <typeparam name="A">Computation bound value type</typeparam>
 /// <returns>The result of the last invocation of ma</returns>
 public static Eff <A> repeat <A>(Schedule schedule, Eff <A> ma) =>
 ScheduleEff <A> .Repeat(ma, schedule);
 /// <summary>
 /// Keeps repeating the computation until it fails
 /// </summary>
 /// <param name="schedule">Scheduler strategy for repeating</param>
 /// <param name="ma">Computation to repeat</param>
 /// <typeparam name="RT">Runtime</typeparam>
 /// <typeparam name="A">Computation bound value type</typeparam>
 /// <returns>The result of the last invocation of ma</returns>
 public static Eff <RT, A> repeat <RT, A>(Schedule schedule, Eff <RT, A> ma) where RT : struct =>
 ScheduleEff <RT, A> .Repeat(ma, schedule);
 /// <summary>
 /// Keeps repeating the computation until it fails
 /// </summary>
 /// <param name="ma">Computation to repeat</param>
 /// <typeparam name="RT">Runtime</typeparam>
 /// <typeparam name="A">Computation bound value type</typeparam>
 /// <returns>The result of the last invocation of ma</returns>
 public static Eff <A> repeat <A>(Eff <A> ma) =>
 ScheduleEff <A> .Repeat(ma, Schedule.Forever);
 /// <summary>
 /// Keeps repeating the computation until it fails
 /// </summary>
 /// <param name="ma">Computation to repeat</param>
 /// <typeparam name="RT">Runtime</typeparam>
 /// <typeparam name="A">Computation bound value type</typeparam>
 /// <returns>The result of the last invocation of ma</returns>
 public static Eff <RT, A> repeat <RT, A>(Eff <RT, A> ma) where RT : struct =>
 ScheduleEff <RT, A> .Repeat(ma, Schedule.Forever);
Esempio n. 5
0
 /// <summary>
 /// Keeps repeating the computation until it fails  
 /// </summary>
 /// <param name="schedule">Scheduler strategy for repeating</param>
 /// <param name="ma">Computation to repeat</param>
 /// <typeparam name="RT">Runtime</typeparam>
 /// <typeparam name="A">Computation bound value type</typeparam>
 /// <returns>The result of the last invocation of ma</returns>
 public static Eff<A> Repeat<A>(this Eff<A> ma, Schedule schedule) => 
     ScheduleEff<A>.Repeat(ma, schedule);       
Esempio n. 6
0
 /// <summary>
 /// Keeps repeating the computation until it fails  
 /// </summary>
 /// <param name="schedule">Scheduler strategy for repeating</param>
 /// <param name="ma">Computation to repeat</param>
 /// <typeparam name="RT">Runtime</typeparam>
 /// <typeparam name="A">Computation bound value type</typeparam>
 /// <returns>The result of the last invocation of ma</returns>
 public static Eff<RT, A> Repeat<RT, A>(this Eff<RT, A> ma, Schedule schedule) where RT : struct =>
     ScheduleEff<RT, A>.Repeat(ma, schedule);