Ejemplo n.º 1
0
        internal static BlockStatement DecompileYieldStateMachine(this MethodBody body, MethodSpecificContext enclosingMethodContext, out YieldData yieldData)
        {
            DecompilationContext decompilationContext;
            BlockStatement       theBlockStatement = body.DecompileStateMachine(enclosingMethodContext, new RemoveYieldStateMachineStep(),
                                                                                (DecompilationContext context) => context.MethodContext.YieldData, out decompilationContext);

            yieldData = decompilationContext.MethodContext.YieldData;
            return(theBlockStatement);
        }
Ejemplo n.º 2
0
        internal static BlockStatement DecompileAsyncStateMachine(this MethodBody body, DecompilationContext enclosingContext,
            out AsyncData asyncData)
        {
            DecompilationContext decompilationContext;
            BlockStatement theBlockStatement = body.DecompileStateMachine(enclosingContext, new RemoveAsyncStateMachineStep(),
                (DecompilationContext context) => context.MethodContext.AsyncData, out decompilationContext);

            asyncData = decompilationContext.MethodContext.AsyncData;
            return theBlockStatement;
        }
Ejemplo n.º 3
0
 internal static BlockStatement DecompileYieldStateMachine(this MethodBody body, DecompilationContext enclosingContext, out YieldData yieldData)
 {
     stackVariable0 = body;
     stackVariable1 = enclosingContext;
     stackVariable2 = new RemoveYieldStateMachineStep();
     stackVariable3 = Extensions.u003cu003ec.u003cu003e9__7_0;
     if (stackVariable3 == null)
     {
         dummyVar0      = stackVariable3;
         stackVariable3 = new Func <DecompilationContext, IStateMachineData>(Extensions.u003cu003ec.u003cu003e9.u003cDecompileYieldStateMachineu003eb__7_0);
         Extensions.u003cu003ec.u003cu003e9__7_0 = stackVariable3;
     }
     stackVariable5 = stackVariable0.DecompileStateMachine(stackVariable1, stackVariable2, stackVariable3, out V_0);
     yieldData      = V_0.get_MethodContext().get_YieldData();
     return(stackVariable5);
 }