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

◆ YieldToPendingContinuation()

int System.Linq.Expressions.Interpreter.InterpretedFrame.YieldToPendingContinuation ( )
inline

Definition at line 165 of file InterpretedFrame.cs.

166 {
167 RuntimeLabel runtimeLabel = Interpreter._labels[_pendingContinuation];
168 if (runtimeLabel.ContinuationStackDepth < _continuationIndex)
169 {
170 RuntimeLabel runtimeLabel2 = Interpreter._labels[_continuations[_continuationIndex - 1]];
171 SetStackDepth(runtimeLabel2.StackDepth);
172 return runtimeLabel2.Index - InstructionIndex;
173 }
174 SetStackDepth(runtimeLabel.StackDepth);
175 if (_pendingValue != Interpreter.NoValue)
176 {
177 Data[StackIndex - 1] = _pendingValue;
178 }
180 _pendingValue = Interpreter.NoValue;
181 return runtimeLabel.Index - InstructionIndex;
182 }

References System.Linq.Expressions.Interpreter.InterpretedFrame._continuationIndex, System.Linq.Expressions.Interpreter.InterpretedFrame._continuations, System.Linq.Expressions.Interpreter.Interpreter._labels, System.Linq.Expressions.Interpreter.InterpretedFrame._pendingContinuation, System.Linq.Expressions.Interpreter.InterpretedFrame._pendingValue, System.Linq.Expressions.Interpreter.InterpretedFrame.InstructionIndex, System.Linq.Expressions.Interpreter.Interpreter.NoValue, System.Linq.Expressions.Interpreter.InterpretedFrame.SetStackDepth(), and System.Linq.Expressions.Interpreter.InterpretedFrame.StackIndex.

Referenced by System.Linq.Expressions.Interpreter.LeaveFinallyInstruction.Run().