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

◆ CompileGotoExpression()

void System.Linq.Expressions.Interpreter.LightCompiler.CompileGotoExpression ( Expression expr)
inlineprivate

Definition at line 1303 of file LightCompiler.cs.

1304 {
1305 GotoExpression gotoExpression = (GotoExpression)expr;
1306 LabelInfo labelInfo = ReferenceLabel(gotoExpression.Target);
1307 if (gotoExpression.Value != null)
1308 {
1309 Compile(gotoExpression.Value);
1310 }
1311 _instructions.EmitGoto(labelInfo.GetLabel(this), gotoExpression.Type != typeof(void), gotoExpression.Value != null && gotoExpression.Value.Type != typeof(void), gotoExpression.Target.Type != typeof(void));
1312 }
void EmitGoto(BranchLabel label, bool hasResult, bool hasValue, bool labelTargetGetsValue)
void Compile(Expression expr, bool asVoid)

References System.Linq.Expressions.Interpreter.LightCompiler._instructions, System.Linq.Expressions.Interpreter.LightCompiler.Compile(), System.Linq.Expressions.Interpreter.InstructionList.EmitGoto(), and System.Linq.Expressions.Interpreter.LightCompiler.ReferenceLabel().

Referenced by System.Linq.Expressions.Interpreter.LightCompiler.CompileNoLabelPush().