public static T End(IAsyncResult result)
 {
     Fx.AssertAndThrowFatal(result.IsCompleted, "CompletedAsyncResult<T> was not completed!");
     return(AsyncResult.End <CompletedAsyncResult <T> >(result).data);
 }
 public static void End(IAsyncResult result)
 {
     Fx.AssertAndThrowFatal(result.IsCompleted, "CompletedAsyncResult was not completed!");
     AsyncResult.End <CompletedAsyncResult>(result);
 }