Skip to content

Instantly share code, notes, and snippets.

@codehaks
Last active March 27, 2020 07:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save codehaks/66dcb10aa8568a250e730c72ff96291a to your computer and use it in GitHub Desktop.
Save codehaks/66dcb10aa8568a250e730c72ff96291a to your computer and use it in GitHub Desktop.
test
.class public auto ansi beforefieldinit MyApp.IndexModel
extends [Microsoft.AspNetCore.Mvc.RazorPages]Microsoft.AspNetCore.Mvc.RazorPages.PageModel
{
// Nested Types
.class nested private auto ansi sealed beforefieldinit '<OnGet>d__0'
extends [System.Runtime]System.Object
implements [System.Runtime]System.Runtime.CompilerServices.IAsyncStateMachine
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = (
01 00 00 00
)
// Fields
.field public int32 '<>1__state'
.field public valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult> '<>t__builder'
.field public class MyApp.IndexModel '<>4__this'
// Methods
.method public hidebysig specialname rtspecialname
instance void .ctor () cil managed
{
// Method begins at RVA 0x21dc
// Code size 8 (0x8)
.maxstack 8
// (no C# code)
IL_0000: ldarg.0
IL_0001: call instance void [System.Runtime]System.Object::.ctor()
IL_0006: nop
// }
IL_0007: ret
} // end of method '<OnGet>d__0'::.ctor
.method private final hidebysig newslot virtual
instance void MoveNext () cil managed
{
.override method instance void [System.Runtime]System.Runtime.CompilerServices.IAsyncStateMachine::MoveNext()
// Method begins at RVA 0x21e8
// Code size 80 (0x50)
.maxstack 2
.locals init (
[0] int32,
[1] class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult,
[2] class [System.Runtime]System.Exception
)
// int num = <>1__state;
IL_0000: ldarg.0
IL_0001: ldfld int32 MyApp.IndexModel/'<OnGet>d__0'::'<>1__state'
IL_0006: stloc.0
.try
{
// (no C# code)
IL_0007: nop
// <>4__this.LongRunningProccess();
IL_0008: ldarg.0
IL_0009: ldfld class MyApp.IndexModel MyApp.IndexModel/'<OnGet>d__0'::'<>4__this'
IL_000e: call instance class [System.Runtime]System.Threading.Tasks.Task MyApp.IndexModel::LongRunningProccess()
IL_0013: pop
// result = <>4__this.Page();
IL_0014: ldarg.0
IL_0015: ldfld class MyApp.IndexModel MyApp.IndexModel/'<OnGet>d__0'::'<>4__this'
IL_001a: callvirt instance class [Microsoft.AspNetCore.Mvc.RazorPages]Microsoft.AspNetCore.Mvc.RazorPages.PageResult [Microsoft.AspNetCore.Mvc.RazorPages]Microsoft.AspNetCore.Mvc.RazorPages.PageModel::Page()
IL_001f: stloc.1
// }
IL_0020: leave.s IL_003a
} // end .try
catch [System.Runtime]System.Exception
{
// (no C# code)
IL_0022: stloc.2
// <>1__state = -2;
IL_0023: ldarg.0
IL_0024: ldc.i4.s -2
IL_0026: stfld int32 MyApp.IndexModel/'<OnGet>d__0'::'<>1__state'
// <>t__builder.SetException(exception);
IL_002b: ldarg.0
IL_002c: ldflda valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult> MyApp.IndexModel/'<OnGet>d__0'::'<>t__builder'
IL_0031: ldloc.2
IL_0032: call instance void valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult>::SetException(class [System.Runtime]System.Exception)
// (no C# code)
IL_0037: nop
IL_0038: leave.s IL_004f
} // end handler
// <>1__state = -2;
IL_003a: ldarg.0
IL_003b: ldc.i4.s -2
IL_003d: stfld int32 MyApp.IndexModel/'<OnGet>d__0'::'<>1__state'
// <>t__builder.SetResult(result);
IL_0042: ldarg.0
IL_0043: ldflda valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult> MyApp.IndexModel/'<OnGet>d__0'::'<>t__builder'
IL_0048: ldloc.1
IL_0049: call instance void valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult>::SetResult(!0)
// (no C# code)
IL_004e: nop
// }
IL_004f: ret
} // end of method '<OnGet>d__0'::MoveNext
.method private final hidebysig newslot virtual
instance void SetStateMachine (
class [System.Runtime]System.Runtime.CompilerServices.IAsyncStateMachine stateMachine
) cil managed
{
.custom instance void [System.Diagnostics.Debug]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = (
01 00 00 00
)
.override method instance void [System.Runtime]System.Runtime.CompilerServices.IAsyncStateMachine::SetStateMachine(class [System.Runtime]System.Runtime.CompilerServices.IAsyncStateMachine)
// Method begins at RVA 0x2254
// Code size 1 (0x1)
.maxstack 8
// }
IL_0000: ret
} // end of method '<OnGet>d__0'::SetStateMachine
} // end of class <OnGet>d__0
.class nested private auto ansi sealed beforefieldinit '<LongRunningProccess>d__1'
extends [System.Runtime]System.Object
implements [System.Runtime]System.Runtime.CompilerServices.IAsyncStateMachine
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = (
01 00 00 00
)
// Fields
.field public int32 '<>1__state'
.field public valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder '<>t__builder'
.field public class MyApp.IndexModel '<>4__this'
.field private valuetype [System.Runtime]System.Runtime.CompilerServices.TaskAwaiter '<>u__1'
// Methods
.method public hidebysig specialname rtspecialname
instance void .ctor () cil managed
{
// Method begins at RVA 0x2256
// Code size 8 (0x8)
.maxstack 8
// (no C# code)
IL_0000: ldarg.0
IL_0001: call instance void [System.Runtime]System.Object::.ctor()
IL_0006: nop
// }
IL_0007: ret
} // end of method '<LongRunningProccess>d__1'::.ctor
.method private final hidebysig newslot virtual
instance void MoveNext () cil managed
{
.override method instance void [System.Runtime]System.Runtime.CompilerServices.IAsyncStateMachine::MoveNext()
// Method begins at RVA 0x2260
// Code size 148 (0x94)
.maxstack 3
.locals init (
[0] int32,
[1] valuetype [System.Runtime]System.Runtime.CompilerServices.TaskAwaiter,
[2] class MyApp.IndexModel/'<LongRunningProccess>d__1',
[3] class [System.Runtime]System.Exception
)
// int num = <>1__state;
IL_0000: ldarg.0
IL_0001: ldfld int32 MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>1__state'
IL_0006: stloc.0
.try
{
// if (num == 0)
IL_0007: ldloc.0
// (no C# code)
IL_0008: brfalse.s IL_000c
IL_000a: br.s IL_000e
IL_000c: br.s IL_004c
IL_000e: nop
// awaiter = Task.Delay(3000).GetAwaiter();
IL_000f: ldc.i4 3000
IL_0014: call class [System.Runtime]System.Threading.Tasks.Task [System.Runtime]System.Threading.Tasks.Task::Delay(int32)
IL_0019: callvirt instance valuetype [System.Runtime]System.Runtime.CompilerServices.TaskAwaiter [System.Runtime]System.Threading.Tasks.Task::GetAwaiter()
IL_001e: stloc.1
// if (awaiter.IsCompleted)
IL_001f: ldloca.s 1
IL_0021: call instance bool [System.Runtime]System.Runtime.CompilerServices.TaskAwaiter::get_IsCompleted()
// (no C# code)
IL_0026: brtrue.s IL_0068
// num = (<>1__state = 0);
IL_0028: ldarg.0
IL_0029: ldc.i4.0
// (no C# code)
IL_002a: dup
IL_002b: stloc.0
IL_002c: stfld int32 MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>1__state'
// <>u__1 = awaiter;
IL_0031: ldarg.0
IL_0032: ldloc.1
IL_0033: stfld valuetype [System.Runtime]System.Runtime.CompilerServices.TaskAwaiter MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>u__1'
// <LongRunningProccess>d__1 stateMachine = this;
IL_0038: ldarg.0
IL_0039: stloc.2
// <>t__builder.AwaitUnsafeOnCompleted(ref awaiter, ref stateMachine);
IL_003a: ldarg.0
IL_003b: ldflda valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>t__builder'
IL_0040: ldloca.s 1
IL_0042: ldloca.s 2
IL_0044: call instance void [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder::AwaitUnsafeOnCompleted<valuetype [System.Runtime]System.Runtime.CompilerServices.TaskAwaiter, class MyApp.IndexModel/'<LongRunningProccess>d__1'>(!!0&, !!1&)
// (no C# code)
IL_0049: nop
// }
IL_004a: leave.s IL_0093
// awaiter = <>u__1;
IL_004c: ldarg.0
IL_004d: ldfld valuetype [System.Runtime]System.Runtime.CompilerServices.TaskAwaiter MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>u__1'
IL_0052: stloc.1
// <>u__1 = default(TaskAwaiter);
IL_0053: ldarg.0
IL_0054: ldflda valuetype [System.Runtime]System.Runtime.CompilerServices.TaskAwaiter MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>u__1'
IL_0059: initobj [System.Runtime]System.Runtime.CompilerServices.TaskAwaiter
// num = (<>1__state = -1);
IL_005f: ldarg.0
IL_0060: ldc.i4.m1
// (no C# code)
IL_0061: dup
IL_0062: stloc.0
IL_0063: stfld int32 MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>1__state'
// awaiter.GetResult();
IL_0068: ldloca.s 1
IL_006a: call instance void [System.Runtime]System.Runtime.CompilerServices.TaskAwaiter::GetResult()
// (no C# code)
IL_006f: nop
// throw new Exception("Error!");
IL_0070: ldstr "Error!"
IL_0075: newobj instance void [System.Runtime]System.Exception::.ctor(string)
// (no C# code)
IL_007a: throw
} // end .try
catch [System.Runtime]System.Exception
{
IL_007b: stloc.3
// <>1__state = -2;
IL_007c: ldarg.0
IL_007d: ldc.i4.s -2
IL_007f: stfld int32 MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>1__state'
// <>t__builder.SetException(exception);
IL_0084: ldarg.0
IL_0085: ldflda valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>t__builder'
IL_008a: ldloc.3
IL_008b: call instance void [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder::SetException(class [System.Runtime]System.Exception)
// (no C# code)
IL_0090: nop
// }
IL_0091: leave.s IL_0093
} // end handler
IL_0093: ret
} // end of method '<LongRunningProccess>d__1'::MoveNext
.method private final hidebysig newslot virtual
instance void SetStateMachine (
class [System.Runtime]System.Runtime.CompilerServices.IAsyncStateMachine stateMachine
) cil managed
{
.custom instance void [System.Diagnostics.Debug]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = (
01 00 00 00
)
.override method instance void [System.Runtime]System.Runtime.CompilerServices.IAsyncStateMachine::SetStateMachine(class [System.Runtime]System.Runtime.CompilerServices.IAsyncStateMachine)
// Method begins at RVA 0x2310
// Code size 1 (0x1)
.maxstack 8
// }
IL_0000: ret
} // end of method '<LongRunningProccess>d__1'::SetStateMachine
} // end of class <LongRunningProccess>d__1
// Methods
.method public hidebysig
instance class [System.Runtime]System.Threading.Tasks.Task`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult> OnGet () cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.AsyncStateMachineAttribute::.ctor(class [System.Runtime]System.Type) = (
01 00 1c 4d 79 41 70 70 2e 49 6e 64 65 78 4d 6f
64 65 6c 2b 3c 4f 6e 47 65 74 3e 64 5f 5f 30 00 00
)
.custom instance void [System.Diagnostics.Debug]System.Diagnostics.DebuggerStepThroughAttribute::.ctor() = (
01 00 00 00
)
// Method begins at RVA 0x2050
// Code size 56 (0x38)
.maxstack 2
.locals init (
[0] class MyApp.IndexModel/'<OnGet>d__0'
)
// <OnGet>d__0 stateMachine = new <OnGet>d__0();
IL_0000: newobj instance void MyApp.IndexModel/'<OnGet>d__0'::.ctor()
IL_0005: stloc.0
// stateMachine.<>4__this = this;
IL_0006: ldloc.0
IL_0007: ldarg.0
IL_0008: stfld class MyApp.IndexModel MyApp.IndexModel/'<OnGet>d__0'::'<>4__this'
// stateMachine.<>t__builder = AsyncTaskMethodBuilder<IActionResult>.Create();
IL_000d: ldloc.0
IL_000e: call valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<!0> valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult>::Create()
IL_0013: stfld valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult> MyApp.IndexModel/'<OnGet>d__0'::'<>t__builder'
// stateMachine.<>1__state = -1;
IL_0018: ldloc.0
IL_0019: ldc.i4.m1
IL_001a: stfld int32 MyApp.IndexModel/'<OnGet>d__0'::'<>1__state'
// stateMachine.<>t__builder.Start(ref stateMachine);
IL_001f: ldloc.0
IL_0020: ldflda valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult> MyApp.IndexModel/'<OnGet>d__0'::'<>t__builder'
IL_0025: ldloca.s 0
IL_0027: call instance void valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult>::Start<class MyApp.IndexModel/'<OnGet>d__0'>(!!0&)
// return stateMachine.<>t__builder.Task;
IL_002c: ldloc.0
IL_002d: ldflda valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult> MyApp.IndexModel/'<OnGet>d__0'::'<>t__builder'
IL_0032: call instance class [System.Runtime]System.Threading.Tasks.Task`1<!0> valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1<class [Microsoft.AspNetCore.Mvc.Abstractions]Microsoft.AspNetCore.Mvc.IActionResult>::get_Task()
// (no C# code)
IL_0037: ret
} // end of method IndexModel::OnGet
.method private hidebysig
instance class [System.Runtime]System.Threading.Tasks.Task LongRunningProccess () cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.AsyncStateMachineAttribute::.ctor(class [System.Runtime]System.Type) = (
01 00 2a 4d 79 41 70 70 2e 49 6e 64 65 78 4d 6f
64 65 6c 2b 3c 4c 6f 6e 67 52 75 6e 6e 69 6e 67
50 72 6f 63 63 65 73 73 3e 64 5f 5f 31 00 00
)
.custom instance void [System.Diagnostics.Debug]System.Diagnostics.DebuggerStepThroughAttribute::.ctor() = (
01 00 00 00
)
// Method begins at RVA 0x2094
// Code size 56 (0x38)
.maxstack 2
.locals init (
[0] class MyApp.IndexModel/'<LongRunningProccess>d__1'
)
// <LongRunningProccess>d__1 stateMachine = new <LongRunningProccess>d__1();
IL_0000: newobj instance void MyApp.IndexModel/'<LongRunningProccess>d__1'::.ctor()
IL_0005: stloc.0
// stateMachine.<>4__this = this;
IL_0006: ldloc.0
IL_0007: ldarg.0
IL_0008: stfld class MyApp.IndexModel MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>4__this'
// stateMachine.<>t__builder = AsyncTaskMethodBuilder.Create();
IL_000d: ldloc.0
IL_000e: call valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder::Create()
IL_0013: stfld valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>t__builder'
// stateMachine.<>1__state = -1;
IL_0018: ldloc.0
IL_0019: ldc.i4.m1
IL_001a: stfld int32 MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>1__state'
// stateMachine.<>t__builder.Start(ref stateMachine);
IL_001f: ldloc.0
IL_0020: ldflda valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>t__builder'
IL_0025: ldloca.s 0
IL_0027: call instance void [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder::Start<class MyApp.IndexModel/'<LongRunningProccess>d__1'>(!!0&)
// return stateMachine.<>t__builder.Task;
IL_002c: ldloc.0
IL_002d: ldflda valuetype [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder MyApp.IndexModel/'<LongRunningProccess>d__1'::'<>t__builder'
IL_0032: call instance class [System.Runtime]System.Threading.Tasks.Task [System.Threading.Tasks]System.Runtime.CompilerServices.AsyncTaskMethodBuilder::get_Task()
// (no C# code)
IL_0037: ret
} // end of method IndexModel::LongRunningProccess
.method public hidebysig specialname rtspecialname
instance void .ctor () cil managed
{
// Method begins at RVA 0x20d8
// Code size 8 (0x8)
.maxstack 8
// (no C# code)
IL_0000: ldarg.0
IL_0001: call instance void [Microsoft.AspNetCore.Mvc.RazorPages]Microsoft.AspNetCore.Mvc.RazorPages.PageModel::.ctor()
IL_0006: nop
// }
IL_0007: ret
} // end of method IndexModel::.ctor
} // end of class MyApp.IndexModel
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment