1018 references to BinaryOperatorKind
Microsoft.CodeAnalysis.VisualBasic (1018)
Analysis\FlowAnalysis\AbstractFlowPass.vb (9)
2162Select Case binary.OperatorKind And BinaryOperatorKind.OpMask 2163Case BinaryOperatorKind.AndAlso, 2164BinaryOperatorKind.OrElse 2171Select Case binary.OperatorKind And BinaryOperatorKind.OpMask 2172Case BinaryOperatorKind.AndAlso 2182Case BinaryOperatorKind.OrElse 2202Select Case binary.OperatorKind And BinaryOperatorKind.OpMask 2203Case BinaryOperatorKind.AndAlso, 2204BinaryOperatorKind.OrElse
Binding\Binder_Expressions.vb (2)
4421Dim value = OverloadResolution.TryFoldConstantBinaryOperator(BinaryOperatorKind.Add, upperBound, one, int32Type, integerOverflow, divideByZero, Nothing) 4433BinaryOperatorKind.Add,
Binding\Binder_Operators.vb (98)
78If([isNot], BinaryOperatorKind.IsNot, BinaryOperatorKind.Is), 160Dim preliminaryOperatorKind As BinaryOperatorKind = OverloadResolution.MapBinaryOperatorKind(node.Kind) 162(preliminaryOperatorKind = BinaryOperatorKind.AndAlso OrElse 163preliminaryOperatorKind = BinaryOperatorKind.OrElse) 231preliminaryOperatorKind As BinaryOperatorKind, 268If (preliminaryOperatorKind = BinaryOperatorKind.Concatenate AndAlso leftIsDBNull <> rightIsDBNull) OrElse 269(preliminaryOperatorKind = BinaryOperatorKind.Add AndAlso 289Dim operatorKind As BinaryOperatorKind = OverloadResolution.ResolveBinaryOperator(preliminaryOperatorKind, left, right, Me, 300If operatorKind = BinaryOperatorKind.UserDefined Then 310If preliminaryOperatorKind = BinaryOperatorKind.AndAlso OrElse preliminaryOperatorKind = BinaryOperatorKind.OrElse Then 319operatorKind = BinaryOperatorKind.Error 322If operatorKind = BinaryOperatorKind.Error Then 325Return New BoundBinaryOperator(node, preliminaryOperatorKind Or BinaryOperatorKind.Error, left, right, CheckOverflow, ErrorTypeSymbol.UnknownResultType, hasErrors:=True) 338If (operatorKind And BinaryOperatorKind.Lifted) = 0 OrElse leftType.IsNullableType() Then 347(operatorKind And BinaryOperatorKind.Lifted) <> 0, diagnostics) 357Case BinaryOperatorKind.Equals, 358BinaryOperatorKind.NotEquals, 359BinaryOperatorKind.LessThanOrEqual, 360BinaryOperatorKind.GreaterThanOrEqual, 361BinaryOperatorKind.LessThan, 362BinaryOperatorKind.GreaterThan, 363BinaryOperatorKind.Like 366operatorKind = operatorKind Or BinaryOperatorKind.CompareText 370(isOperandOfConditionalBranch AndAlso preliminaryOperatorKind <> BinaryOperatorKind.Like) Then 375If (operatorKind And BinaryOperatorKind.Lifted) <> 0 Then 379If (preliminaryOperatorKind = BinaryOperatorKind.Equals OrElse preliminaryOperatorKind = BinaryOperatorKind.NotEquals) AndAlso 384If(preliminaryOperatorKind = BinaryOperatorKind.Equals, 392Debug.Assert(isOperandOfConditionalBranch AndAlso preliminaryOperatorKind <> BinaryOperatorKind.Like) 433If Not isSelectCase OrElse preliminaryOperatorKind <> BinaryOperatorKind.OrElse Then 435If(preliminaryOperatorKind = BinaryOperatorKind.Equals, ERRID.WRN_ObjectMath1, 436If(preliminaryOperatorKind = BinaryOperatorKind.NotEquals, ERRID.WRN_ObjectMath1Not, ERRID.WRN_ObjectMath2))) 454If preliminaryOperatorKind = BinaryOperatorKind.Concatenate Then 457Debug.Assert((operatorKind And BinaryOperatorKind.Lifted) = 0) 481If (preliminaryOperatorKind = BinaryOperatorKind.LeftShift OrElse preliminaryOperatorKind = BinaryOperatorKind.RightShift) AndAlso 491If (operatorKind And BinaryOperatorKind.Lifted) <> 0 Then 510If (operatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.Add AndAlso operatorResultType.IsStringType() Then 512operatorKind = (operatorKind And (Not BinaryOperatorKind.OpMask)) 513operatorKind = operatorKind Or BinaryOperatorKind.Concatenate 551Dim result As BoundExpression = New BoundBinaryOperator(node, operatorKind Or If(isOperandOfConditionalBranch, BinaryOperatorKind.IsOperandOfConditionalBranch, Nothing), 587opKind As BinaryOperatorKind, 595opKind = opKind Or BinaryOperatorKind.UserDefined 614opKind = opKind Or BinaryOperatorKind.Lifted 653opKind As BinaryOperatorKind, 659Debug.Assert(opKind = BinaryOperatorKind.AndAlso OrElse opKind = BinaryOperatorKind.OrElse) 662Dim bitwiseKind As BinaryOperatorKind = If(opKind = BinaryOperatorKind.AndAlso, BinaryOperatorKind.And, BinaryOperatorKind.Or) Or BinaryOperatorKind.UserDefined 684bitwiseKind = bitwiseKind Or BinaryOperatorKind.Lifted 692SyntaxFacts.GetText(If(opKind = BinaryOperatorKind.AndAlso, 708If opKind = BinaryOperatorKind.AndAlso Then 722SyntaxFacts.GetText(If(opKind = BinaryOperatorKind.AndAlso, SyntaxKind.IsFalseKeyword, SyntaxKind.IsTrueKeyword)), 723SyntaxFacts.GetText(If(opKind = BinaryOperatorKind.AndAlso, SyntaxKind.AndAlsoKeyword, SyntaxKind.OrElseKeyword))) 737SyntaxFacts.GetText(If(opKind = BinaryOperatorKind.AndAlso, SyntaxKind.AndAlsoKeyword, SyntaxKind.OrElseKeyword)), 768If(opKind = BinaryOperatorKind.AndAlso, 798preliminaryOperatorKind As BinaryOperatorKind, 803If(preliminaryOperatorKind = BinaryOperatorKind.Equals OrElse preliminaryOperatorKind = BinaryOperatorKind.NotEquals, 964operatorKind As BinaryOperatorKind, 981(operatorKind = BinaryOperatorKind.Equals OrElse operatorKind = BinaryOperatorKind.NotEquals) AndAlso 1006operatorKind As BinaryOperatorKind, 1011Debug.Assert((operatorKind And BinaryOperatorKind.OpMask) = operatorKind AndAlso operatorKind <> 0) 1023Case BinaryOperatorKind.Concatenate, 1024BinaryOperatorKind.Like 1027Case BinaryOperatorKind.OrElse, 1028BinaryOperatorKind.AndAlso 1031Case BinaryOperatorKind.Add, 1032BinaryOperatorKind.Equals, 1033BinaryOperatorKind.NotEquals, 1034BinaryOperatorKind.LessThanOrEqual, 1035BinaryOperatorKind.GreaterThanOrEqual, 1036BinaryOperatorKind.LessThan, 1037BinaryOperatorKind.GreaterThan, 1038BinaryOperatorKind.Subtract, 1039BinaryOperatorKind.Multiply, 1040BinaryOperatorKind.Power, 1041BinaryOperatorKind.Divide, 1042BinaryOperatorKind.Modulo, 1043BinaryOperatorKind.IntegerDivide, 1044BinaryOperatorKind.LeftShift, 1045BinaryOperatorKind.RightShift, 1046BinaryOperatorKind.Xor, 1047BinaryOperatorKind.Or, 1048BinaryOperatorKind.And 1071Case BinaryOperatorKind.Concatenate, 1072BinaryOperatorKind.Like 1085Case BinaryOperatorKind.LeftShift, 1086BinaryOperatorKind.RightShift 1111Case BinaryOperatorKind.Concatenate, 1112BinaryOperatorKind.Like
Binding\Binder_Query.vb (6)
3473Dim operatorKind As BinaryOperatorKind = OverloadResolution.ResolveBinaryOperator(BinaryOperatorKind.Equals, 3481If (operatorKind And BinaryOperatorKind.Equals) <> 0 AndAlso 3482(operatorKind And Not (BinaryOperatorKind.Equals Or BinaryOperatorKind.Lifted)) = 0 AndAlso 3488(operatorKind And BinaryOperatorKind.Lifted) <> 0, diagnostics)
Binding\Binder_SelectCase.vb (17)
210Dim operatorKind As BinaryOperatorKind 212Case SyntaxKind.CaseEqualsClause : operatorKind = BinaryOperatorKind.Equals 213Case SyntaxKind.CaseNotEqualsClause : operatorKind = BinaryOperatorKind.NotEquals 214Case SyntaxKind.CaseLessThanOrEqualClause : operatorKind = BinaryOperatorKind.LessThanOrEqual 215Case SyntaxKind.CaseGreaterThanOrEqualClause : operatorKind = BinaryOperatorKind.GreaterThanOrEqual 216Case SyntaxKind.CaseLessThanClause : operatorKind = BinaryOperatorKind.LessThan 217Case SyntaxKind.CaseGreaterThanClause : operatorKind = BinaryOperatorKind.GreaterThan 260operatorKind:=BinaryOperatorKind.Equals, 292operatorKind:=BinaryOperatorKind.GreaterThanOrEqual, 304operatorKind:=BinaryOperatorKind.LessThanOrEqual, 317operatorKind As BinaryOperatorKind, 426preliminaryOperatorKind:=BinaryOperatorKind.OrElse, 496preliminaryOperatorKind:=BinaryOperatorKind.Equals, 517preliminaryOperatorKind:=BinaryOperatorKind.GreaterThanOrEqual, 533preliminaryOperatorKind:=BinaryOperatorKind.LessThanOrEqual, 544preliminaryOperatorKind:=BinaryOperatorKind.AndAlso, 595relationalClause.OperatorKind <> BinaryOperatorKind.Equals OrElse
Binding\Binder_Statements.vb (22)
2028operatorKind As BinaryOperatorKind, 2156Dim operatorKind As BinaryOperatorKind 2161operatorKind = BinaryOperatorKind.Add 2164operatorKind = BinaryOperatorKind.Subtract 2167operatorKind = BinaryOperatorKind.Multiply 2170operatorKind = BinaryOperatorKind.Divide 2173operatorKind = BinaryOperatorKind.IntegerDivide 2176operatorKind = BinaryOperatorKind.Power 2179operatorKind = BinaryOperatorKind.LeftShift 2182operatorKind = BinaryOperatorKind.RightShift 2185operatorKind = BinaryOperatorKind.Concatenate 3207Dim addition As BoundUserDefinedBinaryOperator = BindForLoopUserDefinedOperator(syntax, BinaryOperatorKind.Add, leftOperandPlaceholder, rightOperandPlaceholder, diagnostics) 3208Dim subtraction As BoundUserDefinedBinaryOperator = BindForLoopUserDefinedOperator(syntax, BinaryOperatorKind.Subtract, leftOperandPlaceholder, rightOperandPlaceholder, diagnostics) 3210Dim lessThanOrEqual As BoundExpression = BindForLoopUserDefinedOperator(syntax, BinaryOperatorKind.LessThanOrEqual, leftOperandPlaceholder, rightOperandPlaceholder, diagnostics) 3216Dim greaterThanOrEqual As BoundExpression = BindForLoopUserDefinedOperator(syntax, BinaryOperatorKind.GreaterThanOrEqual, leftOperandPlaceholder, rightOperandPlaceholder, diagnostics) 3271opCode As BinaryOperatorKind, 3277Debug.Assert(opCode = BinaryOperatorKind.Add OrElse opCode = BinaryOperatorKind.Subtract OrElse opCode = BinaryOperatorKind.LessThanOrEqual OrElse opCode = BinaryOperatorKind.GreaterThanOrEqual) 3279Dim isRelational As Boolean = (opCode = BinaryOperatorKind.LessThanOrEqual OrElse opCode = BinaryOperatorKind.GreaterThanOrEqual)
Binding\DocumentationCommentCrefBinder.vb (21)
927Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Add) 936Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Subtract) 942Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Multiply) 948Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Divide) 954Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.IntegerDivide) 960Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Modulo) 966Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Power) 972Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Equals) 978Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.NotEquals) 984Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.LessThan) 990Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.GreaterThan) 996Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.LessThanOrEqual) 1002Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.GreaterThanOrEqual) 1008Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Like) 1014Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Concatenate) 1020Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.And) 1029Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Or) 1038Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.Xor) 1044Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.LeftShift) 1053Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.RightShift) 1062Dim opInfo As New OverloadResolution.OperatorInfo(BinaryOperatorKind.RightShift)
Binding\SyntheticBoundTrees\AnonymousTypeSyntheticMethods.vb (7)
141expression = New BoundBinaryOperator(syntax, BinaryOperatorKind.Multiply, 145Dim boundCondition = New BoundBinaryOperator(syntax, BinaryOperatorKind.Is, 170expression = New BoundBinaryOperator(syntax, BinaryOperatorKind.Add, expression, 310If(reverse, BinaryOperatorKind.IsNot, BinaryOperatorKind.Is), 315Return New BoundBinaryOperator(Syntax, BinaryOperatorKind.AndAlso, 320Return New BoundBinaryOperator(Syntax, BinaryOperatorKind.OrElse,
Binding\SyntheticBoundTrees\SynthesizedPropertyAccessorBase.vb (2)
261BinaryOperatorKind.IsNot, 341BinaryOperatorKind.IsNot,
Binding\SyntheticBoundTrees\SynthesizedStringSwitchHashMethod.vb (5)
98F.Binary(BinaryOperatorKind.IsNot, Me.ContainingAssembly.GetSpecialType(SpecialType.System_Boolean), 107F.Binary(BinaryOperatorKind.Multiply, hashCode.Type, 108F.Binary(BinaryOperatorKind.Xor, hashCode.Type, 114F.Binary(BinaryOperatorKind.Add, i.Type, 119F.Binary(BinaryOperatorKind.LessThan, Me.ContainingAssembly.GetSpecialType(SpecialType.System_Boolean),
BoundTree\BoundBinaryOperator.vb (16)
15operatorKind As BinaryOperatorKind, 32(OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.LeftShift OrElse 33(OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.RightShift OrElse 34(OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.Is OrElse 35(OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.IsNot) 41If (OperatorKind And BinaryOperatorKind.Error) = 0 Then 42Dim op As BinaryOperatorKind = (OperatorKind And BinaryOperatorKind.OpMask) 47(op = BinaryOperatorKind.Multiply OrElse 48op = BinaryOperatorKind.Add OrElse 49op = BinaryOperatorKind.Subtract OrElse 50op = BinaryOperatorKind.IntegerDivide)
BoundTree\BoundCaseClause.vb (3)
10Protected Shared Sub ValidateValueAndCondition(valueOpt As BoundExpression, conditionOpt As BoundExpression, operatorKind As BinaryOperatorKind) 17Debug.Assert((binaryOp.OperatorKind And BinaryOperatorKind.OpMask) = operatorKind) 21Debug.Assert((binaryOp.OperatorKind And BinaryOperatorKind.OpMask) = operatorKind)
BoundTree\BoundRangeCaseClause.vb (2)
11ValidateValueAndCondition(LowerBoundOpt, LowerBoundConditionOpt, BinaryOperatorKind.GreaterThanOrEqual) 12ValidateValueAndCondition(UpperBoundOpt, UpperBoundConditionOpt, BinaryOperatorKind.LessThanOrEqual)
BoundTree\BoundSimpleCaseClause.vb (1)
15ValidateValueAndCondition(ValueOpt, ConditionOpt, BinaryOperatorKind.Equals)
BoundTree\BoundUserDefinedBinaryOperator.vb (6)
34Debug.Assert((OperatorKind And BinaryOperatorKind.UserDefined) <> 0) 36Debug.Assert((OperatorKind And BinaryOperatorKind.OpMask) <> BinaryOperatorKind.AndAlso) 37Debug.Assert((OperatorKind And BinaryOperatorKind.OpMask) <> BinaryOperatorKind.OrElse) 43If (OperatorKind And BinaryOperatorKind.Lifted) <> 0 Then
CodeGen\EmitConversion.vb (7)
118Select Case (DirectCast(conversion.Operand, BoundBinaryOperator).OperatorKind And BinaryOperatorKind.OpMask) 119Case BinaryOperatorKind.Add, 120BinaryOperatorKind.Subtract, 121BinaryOperatorKind.Multiply, 122BinaryOperatorKind.Divide, 123BinaryOperatorKind.Modulo, 124BinaryOperatorKind.Power
CodeGen\EmitOperators.vb (75)
98Dim operationKind = expression.OperatorKind And BinaryOperatorKind.OpMask 99Dim shortCircuit As Boolean = operationKind = BinaryOperatorKind.AndAlso OrElse operationKind = BinaryOperatorKind.OrElse 116Private Function IsCondOperator(operationKind As BinaryOperatorKind) As Boolean 117Select Case (operationKind And BinaryOperatorKind.OpMask) 118Case BinaryOperatorKind.OrElse, 119BinaryOperatorKind.AndAlso, 120BinaryOperatorKind.Equals, 121BinaryOperatorKind.NotEquals, 122BinaryOperatorKind.LessThanOrEqual, 123BinaryOperatorKind.GreaterThanOrEqual, 124BinaryOperatorKind.LessThan, 125BinaryOperatorKind.GreaterThan, 126BinaryOperatorKind.Is, 127BinaryOperatorKind.IsNot 136Private Function IsComparisonOperator(operationKind As BinaryOperatorKind) As Boolean 137Select Case operationKind And BinaryOperatorKind.OpMask 138Case BinaryOperatorKind.Equals, 139BinaryOperatorKind.NotEquals, 140BinaryOperatorKind.LessThanOrEqual, 141BinaryOperatorKind.GreaterThanOrEqual, 142BinaryOperatorKind.LessThan, 143BinaryOperatorKind.GreaterThan, 144BinaryOperatorKind.Is, 145BinaryOperatorKind.IsNot 195Select Case (binary.OperatorKind And BinaryOperatorKind.OpMask) 196Case BinaryOperatorKind.And 199Case BinaryOperatorKind.Xor 202Case BinaryOperatorKind.Or 216Select Case (expression.OperatorKind And BinaryOperatorKind.OpMask) 217Case BinaryOperatorKind.And 222Case BinaryOperatorKind.Xor 227Case BinaryOperatorKind.Or 238Dim type = expression.OperatorKind And BinaryOperatorKind.OpMask 241Case BinaryOperatorKind.Divide, 242BinaryOperatorKind.Modulo, 243BinaryOperatorKind.IntegerDivide 246Case BinaryOperatorKind.Multiply, 247BinaryOperatorKind.Add, 248BinaryOperatorKind.Subtract 266Dim opKind = expression.OperatorKind And BinaryOperatorKind.OpMask 269Case BinaryOperatorKind.Multiply 282Case BinaryOperatorKind.Modulo 289Case BinaryOperatorKind.Add 301Case BinaryOperatorKind.Subtract 313Case BinaryOperatorKind.Divide, 314BinaryOperatorKind.IntegerDivide 322Case BinaryOperatorKind.LeftShift 336Case BinaryOperatorKind.RightShift 363opKind <> BinaryOperatorKind.LeftShift AndAlso 364opKind <> BinaryOperatorKind.RightShift) 432Dim opKind = (binOp.OperatorKind And BinaryOperatorKind.OpMask) 435Debug.Assert(operandType IsNot Nothing OrElse (binOp.Left.IsNothingLiteral() AndAlso (opKind = BinaryOperatorKind.Is OrElse opKind = BinaryOperatorKind.IsNot))) 441Case BinaryOperatorKind.LessThan 442opKind = BinaryOperatorKind.GreaterThan 443Case BinaryOperatorKind.LessThanOrEqual 444opKind = BinaryOperatorKind.GreaterThanOrEqual 445Case BinaryOperatorKind.GreaterThan 446opKind = BinaryOperatorKind.LessThan 447Case BinaryOperatorKind.GreaterThanOrEqual 448opKind = BinaryOperatorKind.LessThanOrEqual 453Case BinaryOperatorKind.OrElse 457Case BinaryOperatorKind.AndAlso 469Case BinaryOperatorKind.IsNot 473Case BinaryOperatorKind.Is 477Case BinaryOperatorKind.NotEquals 482Case BinaryOperatorKind.Equals 514Case BinaryOperatorKind.Or 521Case BinaryOperatorKind.And 528Case BinaryOperatorKind.Xor 541Case BinaryOperatorKind.LessThan 544Case BinaryOperatorKind.LessThanOrEqual 548Case BinaryOperatorKind.GreaterThan 551Case BinaryOperatorKind.GreaterThanOrEqual
CodeGen\EmitStatement.vb (40)
496Dim opKind = condition.OperatorKind And BinaryOperatorKind.OpMask 498Debug.Assert(opKind = BinaryOperatorKind.Equals OrElse 499opKind = BinaryOperatorKind.NotEquals OrElse 500opKind = BinaryOperatorKind.Is OrElse 501opKind = BinaryOperatorKind.IsNot) 520Debug.Assert(nonConstType IsNot Nothing OrElse (nonConstOp.IsNothingLiteral() AndAlso (opKind = BinaryOperatorKind.Is OrElse opKind = BinaryOperatorKind.IsNot))) 537If opKind = BinaryOperatorKind.NotEquals OrElse opKind = BinaryOperatorKind.IsNot Then 564Dim opKind = (expression.OperatorKind And BinaryOperatorKind.OpMask) 567Debug.Assert(operandType IsNot Nothing OrElse (expression.Left.IsNothingLiteral() AndAlso (opKind = BinaryOperatorKind.Is OrElse opKind = BinaryOperatorKind.IsNot))) 573Case BinaryOperatorKind.LessThan 574opKind = BinaryOperatorKind.GreaterThan 575Case BinaryOperatorKind.LessThanOrEqual 576opKind = BinaryOperatorKind.GreaterThanOrEqual 577Case BinaryOperatorKind.GreaterThan 578opKind = BinaryOperatorKind.LessThan 579Case BinaryOperatorKind.GreaterThanOrEqual 580opKind = BinaryOperatorKind.LessThanOrEqual 585Case BinaryOperatorKind.IsNot 589Case BinaryOperatorKind.Is 593Case BinaryOperatorKind.Equals 596Case BinaryOperatorKind.NotEquals 599Case BinaryOperatorKind.LessThan 602Case BinaryOperatorKind.LessThanOrEqual 605Case BinaryOperatorKind.GreaterThan 608Case BinaryOperatorKind.GreaterThanOrEqual 696Select Case binOp.OperatorKind And BinaryOperatorKind.OpMask 697Case BinaryOperatorKind.OrElse 701Case BinaryOperatorKind.AndAlso 721Case BinaryOperatorKind.IsNot, 722BinaryOperatorKind.Is 727Case BinaryOperatorKind.Equals, 728BinaryOperatorKind.NotEquals 737Case BinaryOperatorKind.LessThan, 738BinaryOperatorKind.LessThanOrEqual, 739BinaryOperatorKind.GreaterThan, 740BinaryOperatorKind.GreaterThanOrEqual 1004Debug.Assert(relationalCaseClause.OperatorKind = BinaryOperatorKind.Equals)
CodeGen\Optimizer\StackScheduler.Analyzer.vb (6)
938Select Case (binary.OperatorKind And BinaryOperatorKind.OpMask) 939Case BinaryOperatorKind.AndAlso, BinaryOperatorKind.OrElse 976Select Case (node.OperatorKind And BinaryOperatorKind.OpMask) 977Case BinaryOperatorKind.AndAlso, BinaryOperatorKind.OrElse
CodeGen\ResumableStateMachineStateAllocator.vb (2)
86If(_increasing, BinaryOperatorKind.GreaterThanOrEqual, BinaryOperatorKind.LessThanOrEqual),
Compilation\VisualBasicCompilation.vb (10)
2982If opInfo.BinaryOperatorKind = BinaryOperatorKind.Xor OrElse 2983opInfo.BinaryOperatorKind = BinaryOperatorKind.And OrElse 2984opInfo.BinaryOperatorKind = BinaryOperatorKind.Or Then 3002If opInfo.BinaryOperatorKind = BinaryOperatorKind.Equals OrElse 3003opInfo.BinaryOperatorKind = BinaryOperatorKind.NotEquals OrElse 3004opInfo.BinaryOperatorKind = BinaryOperatorKind.LessThanOrEqual OrElse 3005opInfo.BinaryOperatorKind = BinaryOperatorKind.GreaterThanOrEqual OrElse 3006opInfo.BinaryOperatorKind = BinaryOperatorKind.LessThan OrElse 3007opInfo.BinaryOperatorKind = BinaryOperatorKind.GreaterThan OrElse 3008opInfo.BinaryOperatorKind = BinaryOperatorKind.Like Then
Generated\BoundNodes.xml.Generated.vb (12)
1529Public Sub New(syntax As SyntaxNode, operatorKind As BinaryOperatorKind, left As BoundExpression, right As BoundExpression, checked As Boolean, constantValueOpt As ConstantValue, type As TypeSymbol, Optional hasErrors As Boolean = False) 1549Private ReadOnly _OperatorKind As BinaryOperatorKind 1550Public ReadOnly Property OperatorKind As BinaryOperatorKind 1589Public Function Update(operatorKind As BinaryOperatorKind, left As BoundExpression, right As BoundExpression, checked As Boolean, constantValueOpt As ConstantValue, type As TypeSymbol) As BoundBinaryOperator 1602Public Sub New(syntax As SyntaxNode, operatorKind As BinaryOperatorKind, underlyingExpression As BoundExpression, checked As Boolean, type As TypeSymbol, Optional hasErrors As Boolean = False) 1619Private ReadOnly _OperatorKind As BinaryOperatorKind 1620Public ReadOnly Property OperatorKind As BinaryOperatorKind 1645Public Function Update(operatorKind As BinaryOperatorKind, underlyingExpression As BoundExpression, checked As Boolean, type As TypeSymbol) As BoundUserDefinedBinaryOperator 5245Public Sub New(syntax As SyntaxNode, operatorKind As BinaryOperatorKind, valueOpt As BoundExpression, conditionOpt As BoundExpression, Optional hasErrors As Boolean = False) 5256Private ReadOnly _OperatorKind As BinaryOperatorKind 5257Public ReadOnly Property OperatorKind As BinaryOperatorKind 5268Public Function Update(operatorKind As BinaryOperatorKind, valueOpt As BoundExpression, conditionOpt As BoundExpression) As BoundRelationalCaseClause
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.Expressions.vb (7)
240Dim operatorKind As BinaryOperatorKind = rewritten.OperatorKind And BinaryOperatorKind.OpMask 241Debug.Assert(operatorKind = (rewritten.OperatorKind And Not (BinaryOperatorKind.IsOperandOfConditionalBranch Or BinaryOperatorKind.OptimizableForConditionalBranch))) 242If operatorKind = BinaryOperatorKind.AndAlso OrElse operatorKind = BinaryOperatorKind.OrElse Then 250If(operatorKind = BinaryOperatorKind.AndAlso,
Lowering\Diagnostics\DiagnosticsPass_ExpressionLambdas.vb (5)
88Dim opKind As BinaryOperatorKind = node.OperatorKind And BinaryOperatorKind.OpMask 91Case BinaryOperatorKind.Like, 92BinaryOperatorKind.Concatenate 96If (node.OperatorKind And BinaryOperatorKind.Lifted) <> 0 Then
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_BinaryOperator.vb (171)
12Debug.Assert((node.OperatorKind And BinaryOperatorKind.UserDefined) = 0) 14Select Case node.OperatorKind And BinaryOperatorKind.OpMask 15Case BinaryOperatorKind.And, 16BinaryOperatorKind.Or, 17BinaryOperatorKind.Xor, 18BinaryOperatorKind.Power, 19BinaryOperatorKind.Multiply, 20BinaryOperatorKind.Add, 21BinaryOperatorKind.Subtract, 22BinaryOperatorKind.Divide, 23BinaryOperatorKind.Modulo, 24BinaryOperatorKind.IntegerDivide, 25BinaryOperatorKind.LeftShift, 26BinaryOperatorKind.RightShift 29Case BinaryOperatorKind.Is, 30BinaryOperatorKind.IsNot, 31BinaryOperatorKind.Equals, 32BinaryOperatorKind.NotEquals, 33BinaryOperatorKind.LessThanOrEqual, 34BinaryOperatorKind.GreaterThanOrEqual, 35BinaryOperatorKind.LessThan, 36BinaryOperatorKind.GreaterThan 39Case BinaryOperatorKind.OrElse, 40BinaryOperatorKind.AndAlso 43Case BinaryOperatorKind.Like, 44BinaryOperatorKind.Concatenate 54Dim opKind As BinaryOperatorKind = node.OperatorKind And BinaryOperatorKind.OpMask 55Dim isLifted As Boolean = (node.OperatorKind And BinaryOperatorKind.Lifted) <> 0 59Case BinaryOperatorKind.Like, 60BinaryOperatorKind.Concatenate 63Case BinaryOperatorKind.Is, 64BinaryOperatorKind.IsNot, 65BinaryOperatorKind.Equals, 66BinaryOperatorKind.NotEquals, 67BinaryOperatorKind.LessThanOrEqual, 68BinaryOperatorKind.GreaterThanOrEqual, 69BinaryOperatorKind.LessThan, 70BinaryOperatorKind.GreaterThan 92Private Shared Function GetComparisonBinaryOperatorFactoryWithMethodInfo(opKind As BinaryOperatorKind) As WellKnownMember 93Select Case opKind And BinaryOperatorKind.OpMask 94Case BinaryOperatorKind.Is, 95BinaryOperatorKind.Equals 98Case BinaryOperatorKind.IsNot, 99BinaryOperatorKind.NotEquals 102Case BinaryOperatorKind.LessThanOrEqual 105Case BinaryOperatorKind.GreaterThanOrEqual 108Case BinaryOperatorKind.LessThan 111Case BinaryOperatorKind.GreaterThan 119Private Shared Function GetNonComparisonBinaryOperatorFactoryWithMethodInfo(opKind As BinaryOperatorKind, isChecked As Boolean) As WellKnownMember 120Select Case opKind And BinaryOperatorKind.OpMask 121Case BinaryOperatorKind.Add 126Case BinaryOperatorKind.Subtract 131Case BinaryOperatorKind.Multiply 136Case BinaryOperatorKind.IntegerDivide, 137BinaryOperatorKind.Divide 140Case BinaryOperatorKind.Modulo 143Case BinaryOperatorKind.Power 146Case BinaryOperatorKind.And 149Case BinaryOperatorKind.Or 152Case BinaryOperatorKind.Xor 155Case BinaryOperatorKind.LeftShift 158Case BinaryOperatorKind.RightShift 168Dim opKind As BinaryOperatorKind = operand.OperatorKind And BinaryOperatorKind.OpMask 174Return ConvertRuntimeHelperToExpressionTree(If(opKind = BinaryOperatorKind.And, 185Dim opKind As BinaryOperatorKind = node.OperatorKind 187If (opKind And BinaryOperatorKind.Lifted) = 0 Then 205Dim opKind = node.OperatorKind And BinaryOperatorKind.OpMask 206Debug.Assert(opKind = BinaryOperatorKind.Is OrElse opKind = BinaryOperatorKind.IsNot OrElse 207opKind = BinaryOperatorKind.Equals OrElse opKind = BinaryOperatorKind.NotEquals OrElse 208opKind = BinaryOperatorKind.LessThan OrElse opKind = BinaryOperatorKind.GreaterThan OrElse 209opKind = BinaryOperatorKind.LessThanOrEqual OrElse opKind = BinaryOperatorKind.GreaterThanOrEqual) 210Debug.Assert((node.OperatorKind And BinaryOperatorKind.UserDefined) = 0) 220Dim isIsIsNot As Boolean = (opKind = BinaryOperatorKind.Is) OrElse (opKind = BinaryOperatorKind.IsNot) 285Case BinaryOperatorKind.LessThan 286opKind = BinaryOperatorKind.GreaterThan 289Case BinaryOperatorKind.LessThanOrEqual 290opKind = BinaryOperatorKind.GreaterThanOrEqual 293Case BinaryOperatorKind.GreaterThan 294opKind = BinaryOperatorKind.LessThan 297Case BinaryOperatorKind.GreaterThanOrEqual 298opKind = BinaryOperatorKind.LessThanOrEqual 339Dim opKind = node.OperatorKind And BinaryOperatorKind.OpMask 340Debug.Assert(opKind = BinaryOperatorKind.AndAlso OrElse opKind = BinaryOperatorKind.OrElse) 341Debug.Assert((node.OperatorKind And BinaryOperatorKind.UserDefined) = 0) 361Case BinaryOperatorKind.AndAlso 363Case BinaryOperatorKind.OrElse 389Dim opKind = node.OperatorKind And BinaryOperatorKind.OpMask 390Debug.Assert(opKind = BinaryOperatorKind.And OrElse opKind = BinaryOperatorKind.Or OrElse opKind = BinaryOperatorKind.Xor OrElse 391opKind = BinaryOperatorKind.Power OrElse opKind = BinaryOperatorKind.Multiply OrElse 392opKind = BinaryOperatorKind.Add OrElse opKind = BinaryOperatorKind.Subtract OrElse 393opKind = BinaryOperatorKind.Divide OrElse opKind = BinaryOperatorKind.IntegerDivide OrElse 394opKind = BinaryOperatorKind.Modulo OrElse 395opKind = BinaryOperatorKind.LeftShift OrElse opKind = BinaryOperatorKind.RightShift) 396Debug.Assert((node.OperatorKind And BinaryOperatorKind.UserDefined) = 0) 410ElseIf opKind = BinaryOperatorKind.Power Then 417Debug.Assert(opKind <> BinaryOperatorKind.Power OrElse helper IsNot Nothing) 441If opKind = BinaryOperatorKind.LeftShift OrElse opKind = BinaryOperatorKind.RightShift Then 469Private Shared Function GetNonComparisonBinaryOperatorFactoryWithoutMethodInfo(opKind As BinaryOperatorKind, isChecked As Boolean) As WellKnownMember 470Select Case opKind And BinaryOperatorKind.OpMask 471Case BinaryOperatorKind.Add 476Case BinaryOperatorKind.Subtract 481Case BinaryOperatorKind.Multiply 486Case BinaryOperatorKind.IntegerDivide, 487BinaryOperatorKind.Divide 490Case BinaryOperatorKind.Modulo 493Case BinaryOperatorKind.And 496Case BinaryOperatorKind.Or 499Case BinaryOperatorKind.Xor 502Case BinaryOperatorKind.LeftShift 505Case BinaryOperatorKind.RightShift 619Private Function GetHelperForDecimalBinaryOperation(opKind As BinaryOperatorKind) As MethodSymbol 620opKind = opKind And BinaryOperatorKind.OpMask 624Case BinaryOperatorKind.Add 626Case BinaryOperatorKind.Subtract 628Case BinaryOperatorKind.Multiply 630Case BinaryOperatorKind.Divide 632Case BinaryOperatorKind.Modulo 635Case BinaryOperatorKind.Equals, 636BinaryOperatorKind.Is 638Case BinaryOperatorKind.NotEquals, 639BinaryOperatorKind.IsNot 641Case BinaryOperatorKind.LessThan 643Case BinaryOperatorKind.LessThanOrEqual 645Case BinaryOperatorKind.GreaterThan 647Case BinaryOperatorKind.GreaterThanOrEqual 656Private Function GetHelperForDateTimeBinaryOperation(opKind As BinaryOperatorKind) As MethodSymbol 657opKind = opKind And BinaryOperatorKind.OpMask 661Case BinaryOperatorKind.Equals, 662BinaryOperatorKind.Is 664Case BinaryOperatorKind.NotEquals, 665BinaryOperatorKind.IsNot 667Case BinaryOperatorKind.LessThan 669Case BinaryOperatorKind.LessThanOrEqual 671Case BinaryOperatorKind.GreaterThan 673Case BinaryOperatorKind.GreaterThanOrEqual 683Private Function GetHelperForObjectBinaryOperation(opKind As BinaryOperatorKind) As MethodSymbol 684opKind = opKind And BinaryOperatorKind.OpMask 688Case BinaryOperatorKind.Add 690Case BinaryOperatorKind.Subtract 692Case BinaryOperatorKind.Multiply 694Case BinaryOperatorKind.Divide 696Case BinaryOperatorKind.IntegerDivide 698Case BinaryOperatorKind.Modulo 700Case BinaryOperatorKind.Power 702Case BinaryOperatorKind.And 704Case BinaryOperatorKind.Xor 706Case BinaryOperatorKind.Or 708Case BinaryOperatorKind.LeftShift 710Case BinaryOperatorKind.RightShift 712Case BinaryOperatorKind.Concatenate 739Private Function AdjustCallForLiftedOperator(opKind As BinaryOperatorKind, [call] As BoundCall, resultType As TypeSymbol) As BoundExpression 740Debug.Assert((opKind And BinaryOperatorKind.Lifted) <> 0) 741Debug.Assert((opKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.Like OrElse 742(opKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.Concatenate)
Lowering\Instrumentation\CodeCoverageInstrumenter.vb (1)
284BinaryOperatorKind.Equals,
Lowering\LambdaRewriter\LambdaRewriter.vb (1)
459Dim condition = New BoundBinaryOperator(syntaxNode, BinaryOperatorKind.Is,
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.vb (17)
367If (binaryOperator.OperatorKind And BinaryOperatorKind.UserDefined) = 0 Then 368Select Case (binaryOperator.OperatorKind And BinaryOperatorKind.OpMask) 369Case BinaryOperatorKind.Power, 370BinaryOperatorKind.Divide, 371BinaryOperatorKind.Modulo, 372BinaryOperatorKind.IntegerDivide, 373BinaryOperatorKind.Concatenate, 374BinaryOperatorKind.And, 375BinaryOperatorKind.AndAlso, 376BinaryOperatorKind.Or, 377BinaryOperatorKind.OrElse, 378BinaryOperatorKind.Xor, 379BinaryOperatorKind.Multiply, 380BinaryOperatorKind.Add, 381BinaryOperatorKind.Subtract, 382BinaryOperatorKind.LeftShift, 383BinaryOperatorKind.RightShift
Lowering\LocalRewriter\LocalRewriter_BinaryOperators.vb (81)
18If (node.OperatorKind And BinaryOperatorKind.Lifted) <> 0 Then 84Dim optimizeForConditionalBranch As Boolean = (node.OperatorKind And BinaryOperatorKind.OptimizableForConditionalBranch) <> 0 100Select Case (binary.OperatorKind And BinaryOperatorKind.OpMask) 101Case BinaryOperatorKind.AndAlso, BinaryOperatorKind.OrElse 127If (binary.OperatorKind And BinaryOperatorKind.Lifted) <> 0 Then 141If optimizeForConditionalBranch AndAlso (binary.OperatorKind And BinaryOperatorKind.OpMask) <> BinaryOperatorKind.OrElse Then 142Debug.Assert((binary.OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.AndAlso) 160If (node.OperatorKind And BinaryOperatorKind.Lifted) <> 0 Then 231Debug.Assert((opKind And BinaryOperatorKind.Lifted) = 0) 233Select Case (opKind And BinaryOperatorKind.OpMask) 234Case BinaryOperatorKind.Is, BinaryOperatorKind.IsNot 248Case BinaryOperatorKind.Concatenate ' Concat needs to be done before expr trees, so in LocalRewriter instead of VBSemanticsRewriter 255Case BinaryOperatorKind.Like 262Case BinaryOperatorKind.Equals 284Case BinaryOperatorKind.NotEquals 303Case BinaryOperatorKind.LessThanOrEqual 322Case BinaryOperatorKind.GreaterThanOrEqual 341Case BinaryOperatorKind.LessThan 360Case BinaryOperatorKind.GreaterThan 379Case BinaryOperatorKind.Add 386Case BinaryOperatorKind.Subtract 393Case BinaryOperatorKind.Multiply 400Case BinaryOperatorKind.Modulo 407Case BinaryOperatorKind.Divide 414Case BinaryOperatorKind.IntegerDivide 419Case BinaryOperatorKind.Power 426Case BinaryOperatorKind.LeftShift 431Case BinaryOperatorKind.RightShift 436Case BinaryOperatorKind.OrElse, BinaryOperatorKind.AndAlso 441Case BinaryOperatorKind.Xor 446Case BinaryOperatorKind.Or 451Case BinaryOperatorKind.And 489node.OperatorKind And BinaryOperatorKind.OpMask, 528node.OperatorKind And BinaryOperatorKind.OpMask, 603Dim op = New BoundBinaryOperator(node.Syntax, node.OperatorKind And BinaryOperatorKind.OpMask, left, right, False, left.Type) 680Dim compareText As Boolean = (node.OperatorKind And BinaryOperatorKind.CompareText) <> 0 704result = New BoundBinaryOperator(node.Syntax, (node.OperatorKind And BinaryOperatorKind.OpMask), 720Dim compareText As Boolean = (node.OperatorKind And BinaryOperatorKind.CompareText) <> 0 752Dim compareText As Boolean = (node.OperatorKind And BinaryOperatorKind.CompareText) <> 0 802Debug.Assert((node.OperatorKind And BinaryOperatorKind.Lifted) <> 0) 804(node.OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.OrElse OrElse 805(node.OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.AndAlso) 818(leftHasValue OrElse Not Me._inExpressionLambda OrElse (node.OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.OrElse) Then 847Select Case (node.OperatorKind And BinaryOperatorKind.OpMask) 849Case BinaryOperatorKind.And, 850BinaryOperatorKind.Or, 851BinaryOperatorKind.AndAlso, 852BinaryOperatorKind.OrElse 915BinaryOperatorKind.And, 953Debug.Assert(leftHasValue OrElse Not Me._inExpressionLambda OrElse (node.OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.OrElse) 962If (node.OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.OrElse Then 971Debug.Assert((node.OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.AndAlso) 995BinaryOperatorKind.AndAlso, 997BinaryOperatorKind.OrElse, 1005BinaryOperatorKind.AndAlso, 1025Debug.Assert(leftHasValue OrElse (node.OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.OrElse) 1070Dim op = node.OperatorKind And BinaryOperatorKind.OpMask 1071Dim isOr As Boolean = (op = BinaryOperatorKind.OrElse) OrElse 1072(op = BinaryOperatorKind.Or) 1122MakeBooleanBinaryExpression(syntax, BinaryOperatorKind.And, 1166Dim IsShortCircuited = (op = BinaryOperatorKind.AndAlso Or op = BinaryOperatorKind.OrElse) 1263BinaryOperatorKind.AndAlso, 1311Debug.Assert(node.OperatorKind = BinaryOperatorKind.Is OrElse node.OperatorKind = BinaryOperatorKind.IsNot) 1317Return RewriteNullableIsOrIsNotOperator((node.OperatorKind And BinaryOperatorKind.OpMask) = BinaryOperatorKind.Is, If(left.IsNothingLiteral, right, left), node.Type) 1442condition = MakeBooleanBinaryExpression(node.Syntax, BinaryOperatorKind.And, leftHasValueExpression, rightHasValueExpression) 1500Dim unliftedOpKind = originalOperator.OperatorKind And (Not BinaryOperatorKind.Lifted)
Lowering\LocalRewriter\LocalRewriter_Conversion.vb (7)
82Select Case binary.OperatorKind And BinaryOperatorKind.OpMask 83Case BinaryOperatorKind.Equals, 84BinaryOperatorKind.NotEquals, 85BinaryOperatorKind.LessThan, 86BinaryOperatorKind.LessThanOrEqual, 87BinaryOperatorKind.GreaterThan, 88BinaryOperatorKind.GreaterThanOrEqual
Lowering\LocalRewriter\LocalRewriter_ForEach.vb (2)
389BinaryOperatorKind.Add, 468BinaryOperatorKind.LessThan,
Lowering\LocalRewriter\LocalRewriter_ForTo.vb (15)
137BinaryOperatorKind.GreaterThanOrEqual, 146BinaryOperatorKind.AndAlso, 580BinaryOperatorKind.And, 590BinaryOperatorKind.Add, 637New BoundBinaryOperator(value.Syntax, BinaryOperatorKind.RightShift, [step], shiftConst, False, [step].Type)) 639Return TransformRewrittenBinaryOperator(New BoundBinaryOperator(value.Syntax, BinaryOperatorKind.Xor, shiftedStep, value, False, value.Type)) 685BinaryOperatorKind.LessThanOrEqual, 695Dim comparisonOperator As BinaryOperatorKind 697comparisonOperator = BinaryOperatorKind.GreaterThanOrEqual 699comparisonOperator = BinaryOperatorKind.LessThanOrEqual 722BinaryOperatorKind.LessThanOrEqual, 736BinaryOperatorKind.And, 748BinaryOperatorKind.LessThanOrEqual, 756BinaryOperatorKind.GreaterThanOrEqual, 779BinaryOperatorKind.AndAlso,
Lowering\LocalRewriter\LocalRewriter_LocalDeclaration.vb (3)
211BinaryOperatorKind.Is, flagAsObject, 268BinaryOperatorKind.Equals, 277BinaryOperatorKind.Equals,
Lowering\LocalRewriter\LocalRewriter_NullableHelpers.vb (11)
393binaryOpKind As BinaryOperatorKind, 417Case BinaryOperatorKind.Subtract 422Case BinaryOperatorKind.Add, 423BinaryOperatorKind.Or, 424BinaryOperatorKind.OrElse 444Case BinaryOperatorKind.And, 445BinaryOperatorKind.AndAlso, 446BinaryOperatorKind.Multiply 466Case BinaryOperatorKind.Equals 475Case BinaryOperatorKind.NotEquals 494binaryOpKind As BinaryOperatorKind,
Lowering\LocalRewriter\LocalRewriter_RaiseEvent.vb (1)
77BinaryOperatorKind.Is,
Lowering\LocalRewriter\LocalRewriter_SelectCase.vb (1)
363Debug.Assert(relationalCaseClause.OperatorKind = BinaryOperatorKind.Equals)
Lowering\LocalRewriter\LocalRewriter_SyncLock.vb (1)
261BinaryOperatorKind.Equals,
Lowering\LocalRewriter\LocalRewriter_UnaryOperators.vb (6)
46If (binary.OperatorKind And BinaryOperatorKind.IsOperandOfConditionalBranch) <> 0 Then 47Select Case (binary.OperatorKind And BinaryOperatorKind.OpMask) 48Case BinaryOperatorKind.AndAlso, BinaryOperatorKind.OrElse 49Debug.Assert((binary.OperatorKind And BinaryOperatorKind.Lifted) <> 0) 51Return binary.Update(binary.OperatorKind Or BinaryOperatorKind.OptimizableForConditionalBranch,
Lowering\LocalRewriter\LocalRewriter_UnstructuredExceptionHandling.vb (3)
236nodeFactory.Conditional(nodeFactory.Binary(BinaryOperatorKind.GreaterThan, 297nodeFactory.Binary(BinaryOperatorKind.NotEquals, 407nodeFactory.Binary(BinaryOperatorKind.Equals,
Lowering\SyntheticBoundNodeFactory.vb (8)
427Return Binary(BinaryOperatorKind.AndAlso, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right) 431Return Binary(BinaryOperatorKind.OrElse, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right) 435Return Binary(BinaryOperatorKind.Equals, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right) 439Return Binary(BinaryOperatorKind.LessThan, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right) 1059Public Function Binary(kind As BinaryOperatorKind, type As TypeSymbol, left As BoundExpression, right As BoundExpression) As BoundBinaryOperator 1066Dim boundNode = Binary(BinaryOperatorKind.Is, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right) 1073Dim boundNode = Binary(BinaryOperatorKind.Is, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), operand, Me.Null(operand.Type)) 1080Dim boundNode = Binary(BinaryOperatorKind.IsNot, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), operand, Me.Null(operand.Type))
Operations\VisualBasicOperationFactory_Methods.vb (29)
131isLifted:=(boundBinaryOperator.OperatorKind And VisualBasic.BinaryOperatorKind.Lifted) <> 0, 133isCompareText:=(boundBinaryOperator.OperatorKind And VisualBasic.BinaryOperatorKind.CompareText) <> 0) 142isLifted:=(boundUserDefinedBinaryOperator.OperatorKind And VisualBasic.BinaryOperatorKind.Lifted) <> 0, 633Friend Shared Function DeriveBinaryOperatorKind(operatorKind As VisualBasic.BinaryOperatorKind, leftOpt As BoundExpression) As BinaryOperatorKind 634Select Case operatorKind And VisualBasic.BinaryOperatorKind.OpMask 635Case VisualBasic.BinaryOperatorKind.Add 637Case VisualBasic.BinaryOperatorKind.Subtract 639Case VisualBasic.BinaryOperatorKind.Multiply 641Case VisualBasic.BinaryOperatorKind.Divide 643Case VisualBasic.BinaryOperatorKind.IntegerDivide 645Case VisualBasic.BinaryOperatorKind.Modulo 647Case VisualBasic.BinaryOperatorKind.And 649Case VisualBasic.BinaryOperatorKind.Or 651Case VisualBasic.BinaryOperatorKind.Xor 653Case VisualBasic.BinaryOperatorKind.AndAlso 655Case VisualBasic.BinaryOperatorKind.OrElse 657Case VisualBasic.BinaryOperatorKind.LeftShift 659Case VisualBasic.BinaryOperatorKind.RightShift 661Case VisualBasic.BinaryOperatorKind.LessThan 663Case VisualBasic.BinaryOperatorKind.LessThanOrEqual 665Case VisualBasic.BinaryOperatorKind.Equals 667Case VisualBasic.BinaryOperatorKind.NotEquals 669Case VisualBasic.BinaryOperatorKind.Is 671Case VisualBasic.BinaryOperatorKind.IsNot 673Case VisualBasic.BinaryOperatorKind.GreaterThanOrEqual 675Case VisualBasic.BinaryOperatorKind.GreaterThan 677Case VisualBasic.BinaryOperatorKind.Power 679Case VisualBasic.BinaryOperatorKind.Like 681Case VisualBasic.BinaryOperatorKind.Concatenate
Semantics\Operators.vb (251)
35Public Sub New(op As BinaryOperatorKind) 67Public ReadOnly Property BinaryOperatorKind As BinaryOperatorKind 70Return BinaryOperatorKind.Error 73Return CType(_Id >> 2, BinaryOperatorKind) 95operators.Add(WellKnownMemberNames.AdditionOperatorName, New OperatorInfo(BinaryOperatorKind.Add)) 97operators.Add(WellKnownMemberNames.SubtractionOperatorName, New OperatorInfo(BinaryOperatorKind.Subtract)) 98operators.Add(WellKnownMemberNames.MultiplyOperatorName, New OperatorInfo(BinaryOperatorKind.Multiply)) 99operators.Add(WellKnownMemberNames.DivisionOperatorName, New OperatorInfo(BinaryOperatorKind.Divide)) 100operators.Add(WellKnownMemberNames.IntegerDivisionOperatorName, New OperatorInfo(BinaryOperatorKind.IntegerDivide)) 101operators.Add(WellKnownMemberNames.ModulusOperatorName, New OperatorInfo(BinaryOperatorKind.Modulo)) 102operators.Add(WellKnownMemberNames.ExponentOperatorName, New OperatorInfo(BinaryOperatorKind.Power)) 103operators.Add(WellKnownMemberNames.EqualityOperatorName, New OperatorInfo(BinaryOperatorKind.Equals)) 104operators.Add(WellKnownMemberNames.InequalityOperatorName, New OperatorInfo(BinaryOperatorKind.NotEquals)) 105operators.Add(WellKnownMemberNames.LessThanOperatorName, New OperatorInfo(BinaryOperatorKind.LessThan)) 106operators.Add(WellKnownMemberNames.GreaterThanOperatorName, New OperatorInfo(BinaryOperatorKind.GreaterThan)) 107operators.Add(WellKnownMemberNames.LessThanOrEqualOperatorName, New OperatorInfo(BinaryOperatorKind.LessThanOrEqual)) 108operators.Add(WellKnownMemberNames.GreaterThanOrEqualOperatorName, New OperatorInfo(BinaryOperatorKind.GreaterThanOrEqual)) 109operators.Add(WellKnownMemberNames.LikeOperatorName, New OperatorInfo(BinaryOperatorKind.Like)) 110operators.Add(WellKnownMemberNames.ConcatenateOperatorName, New OperatorInfo(BinaryOperatorKind.Concatenate)) 111operators.Add(WellKnownMemberNames.BitwiseAndOperatorName, New OperatorInfo(BinaryOperatorKind.And)) 112operators.Add(WellKnownMemberNames.BitwiseOrOperatorName, New OperatorInfo(BinaryOperatorKind.Or)) 113operators.Add(WellKnownMemberNames.ExclusiveOrOperatorName, New OperatorInfo(BinaryOperatorKind.Xor)) 114operators.Add(WellKnownMemberNames.LeftShiftOperatorName, New OperatorInfo(BinaryOperatorKind.LeftShift)) 115operators.Add(WellKnownMemberNames.RightShiftOperatorName, New OperatorInfo(BinaryOperatorKind.RightShift)) 121operators.Add(WellKnownMemberNames.LogicalAndOperatorName, New OperatorInfo(BinaryOperatorKind.And)) 122operators.Add(WellKnownMemberNames.LogicalOrOperatorName, New OperatorInfo(BinaryOperatorKind.Or)) 123operators.Add(WellKnownMemberNames.UnsignedLeftShiftOperatorName, New OperatorInfo(BinaryOperatorKind.LeftShift)) 124operators.Add(WellKnownMemberNames.UnsignedRightShiftOperatorName, New OperatorInfo(BinaryOperatorKind.RightShift)) 161Friend Shared Function GetOperatorTokenKind(op As BinaryOperatorKind) As SyntaxKind 163Case BinaryOperatorKind.Add 165Case BinaryOperatorKind.Subtract 167Case BinaryOperatorKind.Multiply 169Case BinaryOperatorKind.Divide 171Case BinaryOperatorKind.IntegerDivide 173Case BinaryOperatorKind.Modulo 175Case BinaryOperatorKind.Power 177Case BinaryOperatorKind.Equals 179Case BinaryOperatorKind.NotEquals 181Case BinaryOperatorKind.LessThan 183Case BinaryOperatorKind.GreaterThan 185Case BinaryOperatorKind.LessThanOrEqual 187Case BinaryOperatorKind.GreaterThanOrEqual 189Case BinaryOperatorKind.Like 191Case BinaryOperatorKind.Concatenate 193Case BinaryOperatorKind.And 195Case BinaryOperatorKind.Or 197Case BinaryOperatorKind.Xor 199Case BinaryOperatorKind.LeftShift 201Case BinaryOperatorKind.RightShift 203Case BinaryOperatorKind.AndAlso 205Case BinaryOperatorKind.OrElse 207Case BinaryOperatorKind.Is 209Case BinaryOperatorKind.IsNot 217Friend Shared Function TryGetOperatorName(op As BinaryOperatorKind, isChecked As Boolean) As String 219Select Case (op And BinaryOperatorKind.OpMask) 220Case BinaryOperatorKind.Add 222Case BinaryOperatorKind.Concatenate 224Case BinaryOperatorKind.Like 226Case BinaryOperatorKind.Equals 228Case BinaryOperatorKind.NotEquals 230Case BinaryOperatorKind.LessThanOrEqual 232Case BinaryOperatorKind.GreaterThanOrEqual 234Case BinaryOperatorKind.LessThan 236Case BinaryOperatorKind.GreaterThan 238Case BinaryOperatorKind.Subtract 240Case BinaryOperatorKind.Multiply 242Case BinaryOperatorKind.Power 244Case BinaryOperatorKind.Divide 246Case BinaryOperatorKind.Modulo 248Case BinaryOperatorKind.IntegerDivide 250Case BinaryOperatorKind.LeftShift 252Case BinaryOperatorKind.RightShift 254Case BinaryOperatorKind.Xor 256Case BinaryOperatorKind.Or 258Case BinaryOperatorKind.And 358Case BinaryOperatorKind.LeftShift, BinaryOperatorKind.RightShift 362SyntaxFacts.GetText(If(opInfo.BinaryOperatorKind = BinaryOperatorKind.LeftShift, 810Public Shared Function MapBinaryOperatorKind(opCode As SyntaxKind) As BinaryOperatorKind 811Dim result As BinaryOperatorKind 814Case SyntaxKind.AddExpression : result = BinaryOperatorKind.Add 815Case SyntaxKind.ConcatenateExpression : result = BinaryOperatorKind.Concatenate 816Case SyntaxKind.LikeExpression : result = BinaryOperatorKind.Like 817Case SyntaxKind.EqualsExpression : result = BinaryOperatorKind.Equals 818Case SyntaxKind.NotEqualsExpression : result = BinaryOperatorKind.NotEquals 819Case SyntaxKind.LessThanOrEqualExpression : result = BinaryOperatorKind.LessThanOrEqual 820Case SyntaxKind.GreaterThanOrEqualExpression : result = BinaryOperatorKind.GreaterThanOrEqual 821Case SyntaxKind.LessThanExpression : result = BinaryOperatorKind.LessThan 822Case SyntaxKind.GreaterThanExpression : result = BinaryOperatorKind.GreaterThan 823Case SyntaxKind.SubtractExpression : result = BinaryOperatorKind.Subtract 824Case SyntaxKind.MultiplyExpression : result = BinaryOperatorKind.Multiply 825Case SyntaxKind.ExponentiateExpression : result = BinaryOperatorKind.Power 826Case SyntaxKind.DivideExpression : result = BinaryOperatorKind.Divide 827Case SyntaxKind.ModuloExpression : result = BinaryOperatorKind.Modulo 828Case SyntaxKind.IntegerDivideExpression : result = BinaryOperatorKind.IntegerDivide 829Case SyntaxKind.LeftShiftExpression : result = BinaryOperatorKind.LeftShift 830Case SyntaxKind.RightShiftExpression : result = BinaryOperatorKind.RightShift 831Case SyntaxKind.ExclusiveOrExpression : result = BinaryOperatorKind.Xor 832Case SyntaxKind.OrExpression : result = BinaryOperatorKind.Or 833Case SyntaxKind.OrElseExpression : result = BinaryOperatorKind.OrElse 834Case SyntaxKind.AndExpression : result = BinaryOperatorKind.And 835Case SyntaxKind.AndAlsoExpression : result = BinaryOperatorKind.AndAlso 853opCode As BinaryOperatorKind, 861) As BinaryOperatorKind 863Debug.Assert((opCode And BinaryOperatorKind.OpMask) = opCode AndAlso opCode <> BinaryOperatorKind.Error) 865opCode = (opCode And BinaryOperatorKind.OpMask) 889Return BinaryOperatorKind.Error 896(opCode = BinaryOperatorKind.Subtract AndAlso 909Return BinaryOperatorKind.Error 913Return BinaryOperatorKind.UserDefined 935Return BinaryOperatorKind.Error 938Dim result As BinaryOperatorKind = BinaryOperatorKind.Error 941(opCode = BinaryOperatorKind.Xor OrElse opCode = BinaryOperatorKind.And OrElse opCode = BinaryOperatorKind.Or) AndAlso 949result = result Or BinaryOperatorKind.Lifted 973If result <> BinaryOperatorKind.Error AndAlso 978opCode <> BinaryOperatorKind.Concatenate AndAlso opCode <> BinaryOperatorKind.Like Then 979result = result Or BinaryOperatorKind.Lifted 986Public Shared Function UseUserDefinedBinaryOperators(opCode As BinaryOperatorKind, leftType As TypeSymbol, rightType As TypeSymbol) As Boolean 999opCode = BinaryOperatorKind.Subtract) Then ' Let (Date - Date) use operator overloading. 1020operatorKind As BinaryOperatorKind, 1049Dim op As BinaryOperatorKind = (operatorKind And BinaryOperatorKind.OpMask) 1053If op <> BinaryOperatorKind.Like AndAlso 1054(operatorKind And BinaryOperatorKind.CompareText) = 0 AndAlso 1060op = BinaryOperatorKind.LeftShift OrElse op = BinaryOperatorKind.RightShift) 1096Debug.Assert((operatorKind And BinaryOperatorKind.CompareText) = 0) 1120op As BinaryOperatorKind, 1129Debug.Assert((op And BinaryOperatorKind.OpMask) = op) 1142Case BinaryOperatorKind.Equals 1147Case BinaryOperatorKind.NotEquals 1152Case BinaryOperatorKind.LessThanOrEqual 1157Case BinaryOperatorKind.GreaterThanOrEqual 1162Case BinaryOperatorKind.LessThan 1167Case BinaryOperatorKind.GreaterThan 1185Case BinaryOperatorKind.Add 1198Case BinaryOperatorKind.Subtract 1212Case BinaryOperatorKind.Multiply 1216Case BinaryOperatorKind.IntegerDivide 1232Case BinaryOperatorKind.Modulo 1248Case BinaryOperatorKind.Xor 1252Case BinaryOperatorKind.Or 1256Case BinaryOperatorKind.And 1260Case BinaryOperatorKind.LeftShift 1271Case BinaryOperatorKind.RightShift 1295op As BinaryOperatorKind, 1302Debug.Assert((op And BinaryOperatorKind.OpMask) = op) 1314Case BinaryOperatorKind.Equals 1317Case BinaryOperatorKind.NotEquals 1320Case BinaryOperatorKind.LessThanOrEqual 1323Case BinaryOperatorKind.GreaterThanOrEqual 1326Case BinaryOperatorKind.LessThan 1329Case BinaryOperatorKind.GreaterThan 1347Case BinaryOperatorKind.Add 1350Case BinaryOperatorKind.Subtract 1353Case BinaryOperatorKind.Multiply 1356Case BinaryOperatorKind.Power 1379Case BinaryOperatorKind.Divide 1385Case BinaryOperatorKind.Modulo 1418op As BinaryOperatorKind, 1424Debug.Assert((op And BinaryOperatorKind.OpMask) = op) 1438Case BinaryOperatorKind.Equals 1441Case BinaryOperatorKind.NotEquals 1444Case BinaryOperatorKind.LessThanOrEqual 1447Case BinaryOperatorKind.GreaterThanOrEqual 1450Case BinaryOperatorKind.LessThan 1453Case BinaryOperatorKind.GreaterThan 1467Case BinaryOperatorKind.Add 1470Case BinaryOperatorKind.Subtract 1473Case BinaryOperatorKind.Multiply 1476Case BinaryOperatorKind.Divide 1479Case BinaryOperatorKind.Modulo 1506op As BinaryOperatorKind, 1510Debug.Assert((op And BinaryOperatorKind.OpMask) = op) 1515Case BinaryOperatorKind.Concatenate 1532Case BinaryOperatorKind.GreaterThan, 1533BinaryOperatorKind.LessThan, 1534BinaryOperatorKind.GreaterThanOrEqual, 1535BinaryOperatorKind.LessThanOrEqual, 1536BinaryOperatorKind.Equals, 1537BinaryOperatorKind.NotEquals 1547Case BinaryOperatorKind.Equals 1550Case BinaryOperatorKind.NotEquals 1553Case BinaryOperatorKind.GreaterThan 1556Case BinaryOperatorKind.GreaterThanOrEqual 1559Case BinaryOperatorKind.LessThan 1562Case BinaryOperatorKind.LessThanOrEqual 1577op As BinaryOperatorKind, 1581Debug.Assert((op And BinaryOperatorKind.OpMask) = op) 1592Case BinaryOperatorKind.Equals 1595Case BinaryOperatorKind.NotEquals 1598Case BinaryOperatorKind.GreaterThan 1602Case BinaryOperatorKind.GreaterThanOrEqual 1605Case BinaryOperatorKind.LessThan 1608Case BinaryOperatorKind.LessThanOrEqual 1611Case BinaryOperatorKind.Xor 1614Case BinaryOperatorKind.OrElse, 1615BinaryOperatorKind.Or 1619Case BinaryOperatorKind.AndAlso, 1620BinaryOperatorKind.And 1636opCode As BinaryOperatorKind, 1651Case BinaryOperatorKind.Add 1654Case BinaryOperatorKind.Subtract, 1655BinaryOperatorKind.Multiply, 1656BinaryOperatorKind.Modulo 1659Case BinaryOperatorKind.Divide 1662Case BinaryOperatorKind.IntegerDivide 1665Case BinaryOperatorKind.Power 1668Case BinaryOperatorKind.LeftShift, 1669BinaryOperatorKind.RightShift 1672Case BinaryOperatorKind.OrElse, 1673BinaryOperatorKind.AndAlso 1676Case BinaryOperatorKind.Concatenate, 1677BinaryOperatorKind.Like 1680Case BinaryOperatorKind.Equals, 1681BinaryOperatorKind.NotEquals, 1682BinaryOperatorKind.LessThanOrEqual, 1683BinaryOperatorKind.GreaterThanOrEqual, 1684BinaryOperatorKind.LessThan, 1685BinaryOperatorKind.GreaterThan 1688Case BinaryOperatorKind.Xor, 1689BinaryOperatorKind.Or, 1690BinaryOperatorKind.And 3019opKind As BinaryOperatorKind, 3027Case BinaryOperatorKind.Add 3032Case BinaryOperatorKind.Subtract 3037Case BinaryOperatorKind.Multiply 3042Case BinaryOperatorKind.Divide 3047Case BinaryOperatorKind.IntegerDivide 3052Case BinaryOperatorKind.Modulo 3057Case BinaryOperatorKind.Power 3062Case BinaryOperatorKind.Equals 3067Case BinaryOperatorKind.NotEquals 3072Case BinaryOperatorKind.LessThan 3077Case BinaryOperatorKind.GreaterThan 3082Case BinaryOperatorKind.LessThanOrEqual 3087Case BinaryOperatorKind.GreaterThanOrEqual 3092Case BinaryOperatorKind.Like 3097Case BinaryOperatorKind.Concatenate 3102Case BinaryOperatorKind.And, BinaryOperatorKind.AndAlso 3109Case BinaryOperatorKind.Or, BinaryOperatorKind.OrElse 3115Case BinaryOperatorKind.Xor 3120Case BinaryOperatorKind.LeftShift 3126Case BinaryOperatorKind.RightShift
SymbolDisplay\SymbolDisplayVisitor.Members.vb (1)
401(opInfo.IsBinary AndAlso opInfo.BinaryOperatorKind <> BinaryOperatorKind.Error) Then
Symbols\Metadata\PE\PEMethodSymbol.vb (20)
462Case BinaryOperatorKind.Add, 463BinaryOperatorKind.Subtract, 464BinaryOperatorKind.Multiply, 465BinaryOperatorKind.Divide, 466BinaryOperatorKind.IntegerDivide, 467BinaryOperatorKind.Modulo, 468BinaryOperatorKind.Power, 469BinaryOperatorKind.Equals, 470BinaryOperatorKind.NotEquals, 471BinaryOperatorKind.LessThan, 472BinaryOperatorKind.GreaterThan, 473BinaryOperatorKind.LessThanOrEqual, 474BinaryOperatorKind.GreaterThanOrEqual, 475BinaryOperatorKind.Like, 476BinaryOperatorKind.Concatenate, 477BinaryOperatorKind.Xor 480Case BinaryOperatorKind.And 486Case BinaryOperatorKind.Or 492Case BinaryOperatorKind.LeftShift 498Case BinaryOperatorKind.RightShift
Symbols\Source\SourceMemberContainerTypeSymbol.vb (6)
3651Case BinaryOperatorKind.Equals 3653Case BinaryOperatorKind.NotEquals 3655Case BinaryOperatorKind.LessThan 3657Case BinaryOperatorKind.GreaterThan 3659Case BinaryOperatorKind.LessThanOrEqual 3661Case BinaryOperatorKind.GreaterThanOrEqual
Symbols\Source\SynthesizedEventAccessorSymbol.vb (1)
458BinaryOperatorKind.Is,