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

◆ EmitInvocationExpression()

void System.Linq.Expressions.Compiler.LambdaCompiler.EmitInvocationExpression ( Expression expr,
CompilationFlags flags )
inlineprivate

Definition at line 1195 of file LambdaCompiler.cs.

1196 {
1197 InvocationExpression invocationExpression = (InvocationExpression)expr;
1198 if (invocationExpression.LambdaOperand != null)
1199 {
1201 return;
1202 }
1203 expr = invocationExpression.Expression;
1204 if (typeof(LambdaExpression).IsAssignableFrom(expr.Type))
1205 {
1206 expr = Expression.Call(expr, LambdaExpression.GetCompileMethod(expr.Type));
1207 }
1208 EmitMethodCall(expr, expr.Type.GetInvokeMethod(), invocationExpression, CompilationFlags.EmitExpressionStart | CompilationFlags.EmitAsNoTail);
1209 }
void EmitMethodCall(Expression obj, MethodInfo method, IArgumentProvider methodCallExpr)
void EmitInlinedInvoke(InvocationExpression invoke, CompilationFlags flags)

References System.Linq.Expressions.Expression< TDelegate >.Call(), System.Linq.Expressions.Compiler.LambdaCompiler.EmitInlinedInvoke(), System.Linq.Expressions.Compiler.LambdaCompiler.EmitMethodCall(), System.Linq.Expressions.LambdaExpression.GetCompileMethod(), and System.Linq.Expressions.Expression< TDelegate >.Type.

Referenced by System.Linq.Expressions.Compiler.LambdaCompiler.EmitExpression().