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

◆ CompileAsVoid()

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

Definition at line 2215 of file LightCompiler.cs.

2216 {
2217 bool flag = TryPushLabelBlock(expr);
2219 switch (expr.NodeType)
2220 {
2221 case ExpressionType.Assign:
2223 break;
2224 case ExpressionType.Block:
2226 break;
2227 case ExpressionType.Throw:
2229 break;
2230 default:
2231 CompileNoLabelPush(expr);
2232 if (expr.Type != typeof(void))
2233 {
2235 }
2236 break;
2237 case ExpressionType.Constant:
2238 case ExpressionType.Parameter:
2239 case ExpressionType.Default:
2240 break;
2241 }
2242 if (flag)
2243 {
2245 }
2246 }
void CompileThrowUnaryExpression(Expression expr, bool asVoid)
void CompileBlockExpression(Expression expr, bool asVoid)
void CompileAssignBinaryExpression(Expression expr, bool asVoid)

References System.Linq.Expressions.Interpreter.LightCompiler._instructions, System.Linq.Expressions.Interpreter.LightCompiler._labelBlock, System.Linq.Expressions.Interpreter.LightCompiler.CompileAssignBinaryExpression(), System.Linq.Expressions.Interpreter.LightCompiler.CompileBlockExpression(), System.Linq.Expressions.Interpreter.LightCompiler.CompileNoLabelPush(), System.Linq.Expressions.Interpreter.LightCompiler.CompileThrowUnaryExpression(), System.Linq.Expressions.Interpreter.InstructionList.CurrentStackDepth, System.Linq.Expressions.Interpreter.InstructionList.EmitPop(), System.Linq.Expressions.Interpreter.LabelScopeInfo.Kind, System.Linq.Expressions.Expression< TDelegate >.NodeType, System.Linq.Expressions.Interpreter.LightCompiler.PopLabelBlock(), System.Linq.Expressions.Interpreter.LightCompiler.TryPushLabelBlock(), and System.Linq.Expressions.Expression< TDelegate >.Type.

Referenced by System.Linq.Expressions.Interpreter.LightCompiler.Compile(), System.Linq.Expressions.Interpreter.LightCompiler.CompileBlockStart(), System.Linq.Expressions.Interpreter.LightCompiler.CompileConvertUnaryExpression(), System.Linq.Expressions.Interpreter.LightCompiler.CompileLabelExpression(), System.Linq.Expressions.Interpreter.LightCompiler.CompileLoopExpression(), System.Linq.Expressions.Interpreter.LightCompiler.CompileSwitchExpression(), System.Linq.Expressions.Interpreter.LightCompiler.CompileTryExpression(), and System.Linq.Expressions.Interpreter.LightCompiler.CompileTryFaultExpression().