| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | 
							- namespace Caliburn.Micro.Core {
 
-     using System;
 
-     /// <summary>
 
-     /// A simple result.
 
-     /// </summary>
 
-     public sealed class SimpleResult : IResult {
 
-         readonly bool wasCancelled;
 
-         readonly Exception error;
 
-         private SimpleResult(bool wasCancelled, Exception error) {
 
-             this.wasCancelled = wasCancelled;
 
-             this.error = error;
 
-         }
 
-         /// <summary>
 
-         /// A result that is always succeeded.
 
-         /// </summary>
 
-         public static IResult Succeeded() {
 
-             return new SimpleResult(false, null);
 
-         }
 
-         /// <summary>
 
-         /// A result that is always canceled.
 
-         /// </summary>
 
-         /// <returns>The result.</returns>
 
-         public static IResult Cancelled() {
 
-             return new SimpleResult(true, null);
 
-         }
 
-         /// <summary>
 
-         /// A result that is always failed.
 
-         /// </summary>
 
-         public static IResult Failed(Exception error) {
 
-             return new SimpleResult(false, error);
 
-         }
 
-         /// <summary>
 
-         /// Executes the result using the specified context.
 
-         /// </summary>
 
-         /// <param name="context">The context.</param>
 
-         public void Execute(CoroutineExecutionContext context) {
 
-             Completed(this, new ResultCompletionEventArgs {WasCancelled = wasCancelled, Error = error});
 
-         }
 
-         /// <summary>
 
-         /// Occurs when execution has completed.
 
-         /// </summary>
 
-         public event EventHandler<ResultCompletionEventArgs> Completed = delegate { };
 
-     }
 
- }
 
 
  |