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