106 references to BoundBinaryOperator
Microsoft.CodeAnalysis.VisualBasic (106)
Analysis\FlowAnalysis\AbstractFlowPass.vb (4)
2117Public NotOverridable Overrides Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 2120Dim stack = ArrayBuilder(Of BoundBinaryOperator).GetInstance() 2122Dim binary As BoundBinaryOperator = node 2131binary = DirectCast(child, BoundBinaryOperator)
Binding\Binder_Utils.vb (1)
1338Dim binaryOperator = DirectCast(boundExpression, BoundBinaryOperator)
Binding\MemberSemanticModel.vb (3)
2218Public Overrides Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 2227Dim binary = DirectCast(node.Left, BoundBinaryOperator) 2238binary = DirectCast(current, BoundBinaryOperator)
BoundTree\BoundAssignmentOperator.vb (1)
118leftNode = DirectCast(rightNode, BoundBinaryOperator).Left
BoundTree\BoundCaseClause.vb (2)
16Dim binaryOp As BoundBinaryOperator = DirectCast(conditionOpt, BoundBinaryOperator)
BoundTree\BoundTreeRewriter.vb (5)
107Public NotOverridable Overrides Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 114Dim stack = ArrayBuilder(Of BoundBinaryOperator).GetInstance() 117Dim binary As BoundBinaryOperator = DirectCast(child, BoundBinaryOperator) 127binary = DirectCast(child, BoundBinaryOperator)
BoundTree\BoundTreeVisitor.vb (1)
32Return VisitBinaryOperator(CType(node, BoundBinaryOperator), arg)
BoundTree\BoundTreeWalker.vb (3)
76Public NotOverridable Overrides Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 85Dim binary = DirectCast(node.Left, BoundBinaryOperator) 92binary = DirectCast(current, BoundBinaryOperator)
CodeGen\EmitConversion.vb (1)
118Select Case (DirectCast(conversion.Operand, BoundBinaryOperator).OperatorKind And BinaryOperatorKind.OpMask)
CodeGen\EmitExpression.vb (1)
147EmitBinaryOperatorExpression(DirectCast(expression, BoundBinaryOperator), used)
CodeGen\EmitOperators.vb (14)
96Private Sub EmitBinaryOperatorExpression(expression As BoundBinaryOperator, used As Boolean) 153Private Sub EmitBinaryOperator(expression As BoundBinaryOperator) 163Dim binary As BoundBinaryOperator = DirectCast(child, BoundBinaryOperator) 170Dim stack = ArrayBuilder(Of BoundBinaryOperator).GetInstance() 181binary = DirectCast(child, BoundBinaryOperator) 214Private Sub EmitBinaryOperatorSimple(expression As BoundBinaryOperator) 237Private Function OperatorHasSideEffects(expression As BoundBinaryOperator) As Boolean 256Private Sub EmitBinaryArithOperator(expression As BoundBinaryOperator) 264Private Sub EmitBinaryArithOperatorInstructionAndDowncast(expression As BoundBinaryOperator) 390Private Sub EmitShortCircuitingOperator(condition As BoundBinaryOperator, sense As Boolean, stopSense As Boolean, stopValue As Boolean) 429Private Sub EmitBinaryCondOperator(binOp As BoundBinaryOperator, sense As Boolean) 625Dim binOp = DirectCast(condition, BoundBinaryOperator) 655Dim binOp = DirectCast(condition, BoundBinaryOperator)
CodeGen\EmitStatement.vb (4)
495Private Function TryReduce(condition As BoundBinaryOperator, ByRef sense As Boolean) As BoundExpression 562Private Function CodeForJump(expression As BoundBinaryOperator, sense As Boolean, <Out()> ByRef revOpCode As ILOpCode) As ILOpCode 693Dim binOp = DirectCast(condition, BoundBinaryOperator) 814Private Sub ValidateReferenceEqualityOperands(binOp As BoundBinaryOperator)
CodeGen\Optimizer\StackScheduler.Analyzer.vb (6)
902Public Overrides Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 911Dim stack = ArrayBuilder(Of BoundBinaryOperator).GetInstance() 914Dim binary As BoundBinaryOperator = DirectCast(child, BoundBinaryOperator) 924binary = DirectCast(child, BoundBinaryOperator) 975Private Function VisitBinaryOperatorSimple(node As BoundBinaryOperator) As BoundNode
CodeGen\Optimizer\StackScheduler.Rewriter.vb (6)
59Public Overrides Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 68Dim stack = ArrayBuilder(Of BoundBinaryOperator).GetInstance() 71Dim binary As BoundBinaryOperator = DirectCast(child, BoundBinaryOperator) 81binary = DirectCast(child, BoundBinaryOperator) 106Private Function VisitBinaryOperatorSimple(node As BoundBinaryOperator) As BoundNode
Generated\BoundNodes.xml.Generated.vb (7)
1589Public Function Update(operatorKind As BinaryOperatorKind, left As BoundExpression, right As BoundExpression, checked As Boolean, constantValueOpt As ConstantValue, type As TypeSymbol) As BoundBinaryOperator 9401Return VisitBinaryOperator(CType(node, BoundBinaryOperator), arg) 9815Public Overridable Function VisitBinaryOperator(node As BoundBinaryOperator, arg As A) As R 10518Public Overridable Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 11236Public Overrides Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 12213Public Overrides Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 13362Public Overrides Function VisitBinaryOperator(node As BoundBinaryOperator, arg As Object) As TreeDumperNode
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.Expressions.vb (2)
230Public Overrides Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 231Dim rewritten = DirectCast(MyBase.VisitBinaryOperator(node), BoundBinaryOperator)
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter.vb (1)
218Return VisitBinaryOperator(DirectCast(node, BoundBinaryOperator))
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_BinaryOperator.vb (5)
11Private Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundExpression 198Private Function ConvertBooleanOperator(node As BoundBinaryOperator) As BoundExpression 333Private Function ConvertShortCircuitedBooleanOperator(node As BoundBinaryOperator) As BoundExpression 382Private Function ConvertBinaryOperator(node As BoundBinaryOperator) As BoundExpression 533Private Function MaskShiftCountOperand(node As BoundBinaryOperator, resultType As TypeSymbol, isChecked As Boolean) As BoundExpression
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.vb (1)
365Dim binaryOperator = DirectCast(nodeToCheck, BoundBinaryOperator)
Lowering\LocalRewriter\LocalRewriter_BinaryOperators.vb (27)
81Public Overrides Function VisitBinaryOperator(node As BoundBinaryOperator) As BoundNode 93Dim stack = ArrayBuilder(Of (Binary As BoundBinaryOperator, OptimizeForConditionalBranch As Boolean)).GetInstance() 96Dim binary As BoundBinaryOperator = DirectCast(child, BoundBinaryOperator) 116binary = DirectCast(child, BoundBinaryOperator) 122Dim tuple As (Binary As BoundBinaryOperator, OptimizeForConditionalBranch As Boolean) = stack.Pop() 140Private Shared Function GetLeftOperand(binary As BoundBinaryOperator, ByRef optimizeForConditionalBranch As Boolean) As BoundExpression 151Private Shared Function GetRightOperand(binary As BoundBinaryOperator, adjustIfOptimizableForConditionalBranch As Boolean) As BoundExpression 159Private Function RewriteBinaryOperatorSimple(node As BoundBinaryOperator, optimizeForConditionalBranch As Boolean) As BoundNode 164Return TransformRewrittenBinaryOperator(DirectCast(MyBase.VisitBinaryOperator(node), BoundBinaryOperator)) 228Private Function TransformRewrittenBinaryOperator(node As BoundBinaryOperator) As BoundExpression 461Private Function RewriteDateComparisonOperator(node As BoundBinaryOperator) As BoundExpression 500Private Function RewriteDecimalComparisonOperator(node As BoundBinaryOperator) As BoundExpression 539Private Function RewriteObjectShortCircuitOperator(node As BoundBinaryOperator) As BoundExpression 616Private Function RewritePowOperator(node As BoundBinaryOperator) As BoundExpression 644Private Function RewriteDecimalBinaryOperator(node As BoundBinaryOperator, member As SpecialMember) As BoundExpression 672Private Function RewriteStringComparisonOperator(node As BoundBinaryOperator) As BoundExpression 712Private Function RewriteObjectComparisonOperator(node As BoundBinaryOperator, member As WellKnownMember) As BoundExpression 745Private Function RewriteLikeOperator(node As BoundBinaryOperator, member As WellKnownMember) As BoundExpression 774Private Function RewriteObjectBinaryOperator(node As BoundBinaryOperator, member As WellKnownMember) As BoundExpression 794Private Function RewriteLiftedIntrinsicBinaryOperatorSimple(node As BoundBinaryOperator, optimizeForConditionalBranch As Boolean) As BoundNode 801Private Function FinishRewriteOfLiftedIntrinsicBinaryOperator(node As BoundBinaryOperator, left As BoundExpression, right As BoundExpression, optimizeForConditionalBranch As Boolean) As BoundExpression 948Private Function RewriteAndOptimizeLiftedIntrinsicLogicalShortCircuitingOperator(node As BoundBinaryOperator, 1034Private Function EvaluateOperandAndReturnFalse(node As BoundBinaryOperator, operand As BoundExpression, operandHasValue As Boolean) As BoundExpression 1055Private Function RewriteLiftedBooleanBinaryOperator(node As BoundBinaryOperator, 1306Private Function RewriteNullableIsOrIsNotOperator(node As BoundBinaryOperator) As BoundExpression 1492Private Function ApplyUnliftedBinaryOp(originalOperator As BoundBinaryOperator,
Lowering\LocalRewriter\LocalRewriter_Conversion.vb (1)
80Dim binary = DirectCast(operand, BoundBinaryOperator)
Lowering\LocalRewriter\LocalRewriter_StringConcat.vb (1)
35Private Function RewriteConcatenateOperator(node As BoundBinaryOperator) As BoundExpression
Lowering\LocalRewriter\LocalRewriter_UnaryOperators.vb (1)
45Dim binary = DirectCast(current, BoundBinaryOperator)
Lowering\SyntheticBoundNodeFactory.vb (8)
426Public Function LogicalAndAlso(left As BoundExpression, right As BoundExpression) As BoundBinaryOperator 430Public Function LogicalOrElse(left As BoundExpression, right As BoundExpression) As BoundBinaryOperator 434Public Function IntEqual(left As BoundExpression, right As BoundExpression) As BoundBinaryOperator 438Public Function IntLessThan(left As BoundExpression, right As BoundExpression) As BoundBinaryOperator 1059Public Function Binary(kind As BinaryOperatorKind, type As TypeSymbol, left As BoundExpression, right As BoundExpression) As BoundBinaryOperator 1065Public Function ObjectReferenceEqual(left As BoundExpression, right As BoundExpression) As BoundBinaryOperator 1071Public Function ReferenceIsNothing(operand As BoundExpression) As BoundBinaryOperator 1078Public Function ReferenceIsNotNothing(operand As BoundExpression) As BoundBinaryOperator