/// <summary> /// Gets a concrete awaiter. /// </summary> /// <param name="awaitable"> /// The awaitable. /// </param> /// <typeparam name="TResult"> /// The type of the result of the task. /// </typeparam> /// <returns> /// The <see cref="AwaiterInterfaceWrapper{TResult}"/>. /// </returns> public static AwaiterInterfaceWrapper <TResult> GetAwaiter <TResult>(this IConfiguredTask <TResult> awaitable) { if (awaitable == null) { throw new ArgumentNullException(nameof(awaitable)); } return(new AwaiterInterfaceWrapper <TResult>(awaitable.GetAwaiter())); }
/// <summary> /// Gets a concrete awaiter. /// </summary> /// <param name="awaitable"> /// The awaitable. /// </param> /// <typeparam name="TResult"> /// The type of the result of the task. /// </typeparam> /// <returns> /// The <see cref="AwaiterInterfaceWrapper{TResult}"/>. /// </returns> public static AwaiterInterfaceWrapper <TResult> GetAwaiter <TResult>(this IConfiguredTask <TResult> awaitable) { return(new AwaiterInterfaceWrapper <TResult>(awaitable.CreateAwaiter())); }
/// <summary> /// Gets a concrete awaiter. /// </summary> /// <param name="awaitable"> /// The awaitable. /// </param> /// <returns> /// The <see cref="AwaiterInterfaceWrapper"/>. /// </returns> public static AwaiterInterfaceWrapper GetAwaiter(this IConfiguredTask awaitable) { return(new AwaiterInterfaceWrapper(awaitable.CreateAwaiter())); }