Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- // http://stackoverflow.com/q/22541734/1768303
- public static class TaskExt
- {
- public static async Task<bool> Convert(this Task @this)
- {
- await @this.ConfigureAwait(false);
- return false;
- }
- }
- */
- public static class TaskExt
- {
- public static Task<bool> Convert(this Task @this)
- {
- TaskExt.Convertd__0 stateMachine;
- stateMachine.@this = @this;
- stateMachine.t__builder = AsyncTaskMethodBuilder<bool>.Create();
- stateMachine.1__state = -1;
- stateMachine.t__builder.Start<TaskExt.Convertd__0>(ref stateMachine);
- return stateMachine.t__builder.Task;
- }
- [CompilerGenerated]
- [StructLayout(LayoutKind.Auto)]
- private struct Convertd__0 : IAsyncStateMachine
- {
- public int 1__state;
- public AsyncTaskMethodBuilder<bool> t__builder;
- public Task @this;
- private ConfiguredTaskAwaitable.ConfiguredTaskAwaiter u__awaiter1;
- private object t__stack;
- void IAsyncStateMachine.MoveNext()
- {
- bool result;
- try
- {
- bool flag = true;
- ConfiguredTaskAwaitable.ConfiguredTaskAwaiter awaiter;
- switch (this.1__state)
- {
- case -3:
- goto label_6;
- case 0:
- awaiter = this.u__awaiter1;
- this.u__awaiter1 = new ConfiguredTaskAwaitable.ConfiguredTaskAwaiter();
- this.1__state = -1;
- break;
- default:
- awaiter = this.@this.ConfigureAwait(false).GetAwaiter();
- if (!awaiter.IsCompleted)
- {
- this.1__state = 0;
- this.u__awaiter1 = awaiter;
- this.t__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaitable.ConfiguredTaskAwaiter, TaskExt.Convertd__0>(ref awaiter, ref this);
- flag = false;
- return;
- }
- else
- break;
- }
- awaiter.GetResult();
- ConfiguredTaskAwaitable.ConfiguredTaskAwaiter configuredTaskAwaiter = new ConfiguredTaskAwaitable.ConfiguredTaskAwaiter();
- result = false;
- }
- catch (Exception ex)
- {
- this.1__state = -2;
- this.t__builder.SetException(ex);
- return;
- }
- label_6:
- this.1__state = -2;
- this.t__builder.SetResult(result);
- }
- [DebuggerHidden]
- void IAsyncStateMachine.SetStateMachine(IAsyncStateMachine param0)
- {
- this.t__builder.SetStateMachine(param0);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement