Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ RewriteGotoExpression()

Result System.Linq.Expressions.Compiler.StackSpiller.RewriteGotoExpression ( Expression expr,
Stack stack )
inlineprivate

Definition at line 1040 of file StackSpiller.cs.

1041 {
1042 GotoExpression gotoExpression = (GotoExpression)expr;
1043 Result result = RewriteExpressionFreeTemps(gotoExpression.Value, Stack.Empty);
1044 RewriteAction rewriteAction = result.Action;
1045 if (stack != 0)
1046 {
1047 rewriteAction = RewriteAction.SpillStack;
1048 }
1049 if (rewriteAction != 0)
1050 {
1051 expr = Expression.MakeGoto(gotoExpression.Kind, gotoExpression.Target, result.Node, gotoExpression.Type);
1052 }
1053 return new Result(rewriteAction, expr);
1054 }
Result RewriteExpressionFreeTemps(Expression expression, Stack stack)

References System.Linq.Expressions.Compiler.StackSpiller.Result.Action, System.Linq.Expressions.Expression< TDelegate >.MakeGoto(), System.Linq.Expressions.Compiler.StackSpiller.Result.Node, and System.Linq.Expressions.Compiler.StackSpiller.RewriteExpressionFreeTemps().

Referenced by System.Linq.Expressions.Compiler.StackSpiller.RewriteExpression().