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

◆ RewriteLogicalBinaryExpression()

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

Definition at line 609 of file StackSpiller.cs.

610 {
611 BinaryExpression binaryExpression = (BinaryExpression)expr;
612 Result result = RewriteExpression(binaryExpression.Left, stack);
613 Result result2 = RewriteExpression(binaryExpression.Right, stack);
614 Result result3 = RewriteExpression(binaryExpression.Conversion, stack);
615 RewriteAction rewriteAction = result.Action | result2.Action | result3.Action;
616 if (rewriteAction != 0)
617 {
618 expr = BinaryExpression.Create(binaryExpression.NodeType, result.Node, result2.Node, binaryExpression.Type, binaryExpression.Method, (LambdaExpression)result3.Node);
619 }
620 return new Result(rewriteAction, expr);
621 }
Result RewriteExpression(Expression node, Stack stack)

References System.Linq.Expressions.BinaryExpression.Create(), System.Linq.Expressions.Compiler.StackSpiller.Result.Node, and System.Linq.Expressions.Compiler.StackSpiller.RewriteExpression().

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