233 references to UnaryOperatorKind
Microsoft.CodeAnalysis.VisualBasic (233)
Analysis\FlowAnalysis\AbstractFlowPass.vb (1)
2287
If node.OperatorKind =
UnaryOperatorKind
.Not Then
Binding\Binder_Conversions.vb (1)
379
Dim isTrue As BoundUserDefinedUnaryOperator = BindUserDefinedUnaryOperator(node,
UnaryOperatorKind
.IsTrue, argument, isTrueOperator, diagnostics)
Binding\Binder_Operators.vb (12)
769
UnaryOperatorKind
.IsFalse,
770
UnaryOperatorKind
.IsTrue),
1137
Dim preliminaryOperatorKind As
UnaryOperatorKind
= OverloadResolution.MapUnaryOperatorKind(node.Kind)
1157
Dim operatorKind As
UnaryOperatorKind
= OverloadResolution.ResolveUnaryOperator(preliminaryOperatorKind, operand, Me, intrinsicOperatorType, userDefinedOperator, useSiteInfo)
1164
If operatorKind =
UnaryOperatorKind
.UserDefined Then
1175
operatorKind =
UnaryOperatorKind
.Error
1178
If operatorKind =
UnaryOperatorKind
.Error Then
1181
Return New BoundUnaryOperator(node, preliminaryOperatorKind Or
UnaryOperatorKind
.Error, operand, CheckOverflow, ErrorTypeSymbol.UnknownResultType, HasErrors:=True)
1204
Debug.Assert(((operatorKind And
UnaryOperatorKind
.Lifted) <> 0) = resultType.IsNullableType())
1239
opKind As
UnaryOperatorKind
,
1248
opKind = opKind Or
UnaryOperatorKind
.UserDefined
1265
opKind = opKind Or
UnaryOperatorKind
.Lifted
Binding\DocumentationCommentCrefBinder.vb (7)
903
Dim opInfo As New OverloadResolution.OperatorInfo(
UnaryOperatorKind
.IsTrue)
909
Dim opInfo As New OverloadResolution.OperatorInfo(
UnaryOperatorKind
.IsFalse)
915
Dim opInfo As New OverloadResolution.OperatorInfo(
UnaryOperatorKind
.Not)
924
Dim opInfo As New OverloadResolution.OperatorInfo(
UnaryOperatorKind
.Plus)
933
Dim opInfo As New OverloadResolution.OperatorInfo(
UnaryOperatorKind
.Minus)
1064
WellKnownMemberNames.ImplicitConversionName, New OverloadResolution.OperatorInfo(
UnaryOperatorKind
.Implicit),
1066
WellKnownMemberNames.ExplicitConversionName, New OverloadResolution.OperatorInfo(
UnaryOperatorKind
.Explicit))
BoundTree\BoundUnaryOperator.vb (5)
15
operatorKind As
UnaryOperatorKind
,
34
If (OperatorKind And
UnaryOperatorKind
.Error) = 0 Then
35
Dim op As
UnaryOperatorKind
= (OperatorKind And
UnaryOperatorKind
.OpMask)
39
Dim isChecked = Checked AndAlso operandType.IsIntegralType() AndAlso op =
UnaryOperatorKind
.Minus
CodeGen\EmitConversion.vb (3)
130
Select Case (DirectCast(conversion.Operand, BoundUnaryOperator).OperatorKind And
UnaryOperatorKind
.IntrinsicOpMask)
131
Case
UnaryOperatorKind
.Minus,
132
UnaryOperatorKind
.Plus
CodeGen\EmitOperators.vb (6)
15
Debug.Assert((expression.OperatorKind And Not
UnaryOperatorKind
.IntrinsicOpMask) = 0 AndAlso expression.OperatorKind <> 0)
23
Case
UnaryOperatorKind
.Minus
53
Case
UnaryOperatorKind
.Not
76
Case
UnaryOperatorKind
.Plus
88
expression.OperatorKind =
UnaryOperatorKind
.Minus AndAlso
689
Debug.Assert(unOp.OperatorKind =
UnaryOperatorKind
.Not AndAlso unOp.Type.IsBooleanType())
CodeGen\EmitStatement.vb (1)
758
If (unOp.OperatorKind =
UnaryOperatorKind
.Not) Then
CodeGen\Optimizer\StackScheduler.Analyzer.vb (2)
999
If node.Checked AndAlso (node.OperatorKind And
UnaryOperatorKind
.OpMask) =
UnaryOperatorKind
.Minus Then
Compilation\VisualBasicCompilation.vb (4)
3079
opInfo.UnaryOperatorKind =
UnaryOperatorKind
.Not AndAlso
3088
If opInfo.UnaryOperatorKind =
UnaryOperatorKind
.Not OrElse
3089
opInfo.UnaryOperatorKind =
UnaryOperatorKind
.Plus OrElse
3090
opInfo.UnaryOperatorKind =
UnaryOperatorKind
.Minus Then
Generated\BoundNodes.xml.Generated.vb (8)
1368
Public Sub New(syntax As SyntaxNode, operatorKind As
UnaryOperatorKind
, operand As BoundExpression, checked As Boolean, constantValueOpt As ConstantValue, type As TypeSymbol, Optional hasErrors As Boolean = False)
1386
Private ReadOnly _OperatorKind As
UnaryOperatorKind
1387
Public ReadOnly Property OperatorKind As
UnaryOperatorKind
1419
Public Function Update(operatorKind As
UnaryOperatorKind
, operand As BoundExpression, checked As Boolean, constantValueOpt As ConstantValue, type As TypeSymbol) As BoundUnaryOperator
1432
Public Sub New(syntax As SyntaxNode, operatorKind As
UnaryOperatorKind
, underlyingExpression As BoundExpression, type As TypeSymbol, Optional hasErrors As Boolean = False)
1448
Private ReadOnly _OperatorKind As
UnaryOperatorKind
1449
Public ReadOnly Property OperatorKind As
UnaryOperatorKind
1467
Public Function Update(operatorKind As
UnaryOperatorKind
, underlyingExpression As BoundExpression, type As TypeSymbol) As BoundUserDefinedUnaryOperator
Lowering\Diagnostics\DiagnosticsPass_ExpressionLambdas.vb (6)
34
Dim opKind As
UnaryOperatorKind
= node.OperatorKind And
UnaryOperatorKind
.OpMask
35
Dim isLifted As Boolean = (node.OperatorKind And
UnaryOperatorKind
.Lifted) <> 0
38
Case
UnaryOperatorKind
.Minus,
39
UnaryOperatorKind
.Plus,
40
UnaryOperatorKind
.Not
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_BinaryOperator.vb (6)
746
Private Function AdjustCallForLiftedOperator(opKind As
UnaryOperatorKind
, [call] As BoundCall, resultType As TypeSymbol) As BoundExpression
747
Debug.Assert((opKind And
UnaryOperatorKind
.Lifted) <> 0)
748
Debug.Assert((opKind And
UnaryOperatorKind
.OpMask) =
UnaryOperatorKind
.IsTrue OrElse
749
(opKind And
UnaryOperatorKind
.OpMask) =
UnaryOperatorKind
.IsFalse)
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_UnaryOperator.vb (37)
31
Dim opKind As
UnaryOperatorKind
= node.OperatorKind And
UnaryOperatorKind
.OpMask
34
Debug.Assert((node.OperatorKind And
UnaryOperatorKind
.UserDefined) = 0)
37
Case
UnaryOperatorKind
.Plus
51
Case
UnaryOperatorKind
.Minus,
52
UnaryOperatorKind
.Not
65
If opKind =
UnaryOperatorKind
.Minus Then
77
If opKind =
UnaryOperatorKind
.Minus Then
127
Dim opKind As
UnaryOperatorKind
= userDefinedOperator.OperatorKind
128
If (opKind And
UnaryOperatorKind
.OpMask) <>
UnaryOperatorKind
.IsTrue OrElse (opKind And
UnaryOperatorKind
.Lifted) = 0 Then
154
Private Function BuildLambdaBodyForCoalesce(opKind As
UnaryOperatorKind
, [call] As BoundCall, resultType As TypeSymbol, lambdaParameter As ParameterSymbol) As BoundExpression
176
Dim opKind As
UnaryOperatorKind
= node.OperatorKind And
UnaryOperatorKind
.OpMask
177
Dim isLifted As Boolean = (node.OperatorKind And
UnaryOperatorKind
.Lifted) <> 0
180
Case
UnaryOperatorKind
.IsTrue,
181
UnaryOperatorKind
.IsFalse
184
Case
UnaryOperatorKind
.Minus,
185
UnaryOperatorKind
.Plus,
186
UnaryOperatorKind
.Not
202
Dim opKind As
UnaryOperatorKind
= node.OperatorKind
204
If (opKind And
UnaryOperatorKind
.Lifted) = 0 Then
215
Private Function GetHelperForDecimalUnaryOperation(opKind As
UnaryOperatorKind
) As MethodSymbol
216
opKind = opKind And
UnaryOperatorKind
.OpMask
220
Case
UnaryOperatorKind
.Minus,
221
UnaryOperatorKind
.Not
231
Private Function GetHelperForObjectUnaryOperation(opKind As
UnaryOperatorKind
) As MethodSymbol
232
opKind = opKind And
UnaryOperatorKind
.OpMask
236
Case
UnaryOperatorKind
.Plus
238
Case
UnaryOperatorKind
.Minus
240
Case
UnaryOperatorKind
.Not
253
Private Shared Function GetUnaryOperatorFactoryMethod(opKind As
UnaryOperatorKind
) As WellKnownMember
254
Select Case (opKind And
UnaryOperatorKind
.OpMask)
255
Case
UnaryOperatorKind
.Not
257
Case
UnaryOperatorKind
.Plus
259
Case
UnaryOperatorKind
.Minus
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.vb (5)
395
If (unaryOperator.OperatorKind And
UnaryOperatorKind
.UserDefined) = 0 Then
396
Select Case (unaryOperator.OperatorKind And
UnaryOperatorKind
.IntrinsicOpMask)
397
Case
UnaryOperatorKind
.Minus,
398
UnaryOperatorKind
.Plus,
399
UnaryOperatorKind
.Not
Lowering\LocalRewriter\LocalRewriter_BinaryOperators.vb (4)
999
UnaryOperatorKind
.Not,
1124
New BoundUnaryOperator(syntax,
UnaryOperatorKind
.Not,
1268
UnaryOperatorKind
.Not,
1354
UnaryOperatorKind
.Not,
Lowering\LocalRewriter\LocalRewriter_UnaryOperators.vb (13)
72
If (node.OperatorKind And
UnaryOperatorKind
.Lifted) <> 0 Then
80
If (node.OperatorKind And
UnaryOperatorKind
.Lifted) = 0 OrElse _inExpressionLambda Then
95
Dim kind As
UnaryOperatorKind
= node.OperatorKind
97
If Not node.HasErrors AndAlso ((kind And
UnaryOperatorKind
.Lifted) = 0) AndAlso (kind <>
UnaryOperatorKind
.Error) AndAlso Not _inExpressionLambda Then
114
Dim opKind = (node.OperatorKind And
UnaryOperatorKind
.IntrinsicOpMask)
118
If opKind =
UnaryOperatorKind
.Plus Then
120
ElseIf opKind =
UnaryOperatorKind
.Minus Then
123
Debug.Assert(opKind =
UnaryOperatorKind
.Not)
142
Dim opKind = (node.OperatorKind And
UnaryOperatorKind
.IntrinsicOpMask)
144
If opKind =
UnaryOperatorKind
.Plus Then
147
Debug.Assert(opKind =
UnaryOperatorKind
.Minus)
316
Dim unliftedOpKind = originalOperator.OperatorKind And (Not
UnaryOperatorKind
.Lifted)
Lowering\SyntheticBoundNodeFactory.vb (1)
1086
Return New BoundUnaryOperator(expression.Syntax,
UnaryOperatorKind
.Not, expression, False, expression.Type)
Operations\VisualBasicOperationFactory_Methods.vb (14)
616
Friend Shared Function DeriveUnaryOperatorKind(operatorKind As VisualBasic.
UnaryOperatorKind
) As
UnaryOperatorKind
617
Select Case operatorKind And VisualBasic.
UnaryOperatorKind
.OpMask
618
Case VisualBasic.
UnaryOperatorKind
.Plus
619
Return
UnaryOperatorKind
.Plus
620
Case VisualBasic.
UnaryOperatorKind
.Minus
621
Return
UnaryOperatorKind
.Minus
622
Case VisualBasic.
UnaryOperatorKind
.Not
623
Return
UnaryOperatorKind
.Not
624
Case VisualBasic.
UnaryOperatorKind
.IsTrue
625
Return
UnaryOperatorKind
.True
626
Case VisualBasic.
UnaryOperatorKind
.IsFalse
627
Return
UnaryOperatorKind
.False
629
Return
UnaryOperatorKind
.None
Operations\VisualBasicOperationFactory.vb (4)
500
Dim operatorKind As
UnaryOperatorKind
= Helper.DeriveUnaryOperatorKind(boundUnaryOperator.OperatorKind)
505
Dim isLifted As Boolean = (boundUnaryOperator.OperatorKind And VisualBasic.
UnaryOperatorKind
.Lifted) <> 0
513
Dim operatorKind As
UnaryOperatorKind
= Helper.DeriveUnaryOperatorKind(boundUserDefinedUnaryOperator.OperatorKind)
518
Dim isLifted As Boolean = (boundUserDefinedUnaryOperator.OperatorKind And VisualBasic.
UnaryOperatorKind
.Lifted) <> 0
Semantics\Operators.vb (83)
31
Public Sub New(op As
UnaryOperatorKind
)
57
Public ReadOnly Property UnaryOperatorKind As
UnaryOperatorKind
60
Return
UnaryOperatorKind
.Error
63
Return CType(_Id >> 2,
UnaryOperatorKind
)
91
operators.Add(WellKnownMemberNames.OnesComplementOperatorName, New OperatorInfo(
UnaryOperatorKind
.Not))
92
operators.Add(WellKnownMemberNames.TrueOperatorName, New OperatorInfo(
UnaryOperatorKind
.IsTrue))
93
operators.Add(WellKnownMemberNames.FalseOperatorName, New OperatorInfo(
UnaryOperatorKind
.IsFalse))
94
operators.Add(WellKnownMemberNames.UnaryPlusOperatorName, New OperatorInfo(
UnaryOperatorKind
.Plus))
96
operators.Add(WellKnownMemberNames.UnaryNegationOperatorName, New OperatorInfo(
UnaryOperatorKind
.Minus))
116
operators.Add(WellKnownMemberNames.ImplicitConversionName, New OperatorInfo(
UnaryOperatorKind
.Implicit))
117
operators.Add(WellKnownMemberNames.ExplicitConversionName, New OperatorInfo(
UnaryOperatorKind
.Explicit))
120
operators.Add(WellKnownMemberNames.LogicalNotOperatorName, New OperatorInfo(
UnaryOperatorKind
.Not))
142
Friend Shared Function GetOperatorTokenKind(op As
UnaryOperatorKind
) As SyntaxKind
144
Case
UnaryOperatorKind
.IsFalse
146
Case
UnaryOperatorKind
.IsTrue
148
Case
UnaryOperatorKind
.Minus
150
Case
UnaryOperatorKind
.Not
152
Case
UnaryOperatorKind
.Plus
154
Case
UnaryOperatorKind
.Implicit,
UnaryOperatorKind
.Explicit
270
Friend Shared Function TryGetOperatorName(op As
UnaryOperatorKind
, isChecked As Boolean) As String
272
Select Case (op And
UnaryOperatorKind
.OpMask)
273
Case
UnaryOperatorKind
.Plus
275
Case
UnaryOperatorKind
.Minus
277
Case
UnaryOperatorKind
.Not
279
Case
UnaryOperatorKind
.Implicit
281
Case
UnaryOperatorKind
.Explicit
283
Case
UnaryOperatorKind
.IsTrue
285
Case
UnaryOperatorKind
.IsFalse
323
Case
UnaryOperatorKind
.Implicit,
UnaryOperatorKind
.Explicit
334
Case
UnaryOperatorKind
.IsTrue
341
Case
UnaryOperatorKind
.IsFalse
477
Public Shared Function MapUnaryOperatorKind(opCode As SyntaxKind) As
UnaryOperatorKind
478
Dim result As
UnaryOperatorKind
482
result =
UnaryOperatorKind
.Plus
484
result =
UnaryOperatorKind
.Minus
486
result =
UnaryOperatorKind
.Not
498
opCode As
UnaryOperatorKind
,
504
) As
UnaryOperatorKind
505
Debug.Assert((opCode And
UnaryOperatorKind
.IntrinsicOpMask) = opCode AndAlso opCode <>
UnaryOperatorKind
.Error)
507
opCode = (opCode And
UnaryOperatorKind
.IntrinsicOpMask)
524
Return
UnaryOperatorKind
.Error
539
Return
UnaryOperatorKind
.Error
543
Return
UnaryOperatorKind
.UserDefined
546
Return
UnaryOperatorKind
.Error
549
Dim result As
UnaryOperatorKind
=
UnaryOperatorKind
.Error
551
If operandIsEnum AndAlso opCode =
UnaryOperatorKind
.Not AndAlso sourceType.IsIntegralType() Then
555
result =
UnaryOperatorKind
.Not
564
If result <>
UnaryOperatorKind
.Error AndAlso operandIsNullable Then
565
result = result Or
UnaryOperatorKind
.Lifted
575
opCode As
UnaryOperatorKind
,
582
Case
UnaryOperatorKind
.Not
613
Case
UnaryOperatorKind
.Plus
645
Case
UnaryOperatorKind
.Minus
703
op As
UnaryOperatorKind
,
734
Select Case (op And
UnaryOperatorKind
.IntrinsicOpMask)
735
Case
UnaryOperatorKind
.Plus
737
Case
UnaryOperatorKind
.Minus
745
Case
UnaryOperatorKind
.Not
757
integerOverflow = (op And
UnaryOperatorKind
.IntrinsicOpMask) =
UnaryOperatorKind
.Minus AndAlso (integerOverflow OrElse detectedIntegerOverflow)
762
Select Case (op And
UnaryOperatorKind
.IntrinsicOpMask)
763
Case
UnaryOperatorKind
.Plus
765
Case
UnaryOperatorKind
.Minus
787
Select Case (op And
UnaryOperatorKind
.IntrinsicOpMask)
788
Case
UnaryOperatorKind
.Plus
790
Case
UnaryOperatorKind
.Minus
801
Debug.Assert((op And
UnaryOperatorKind
.IntrinsicOpMask) =
UnaryOperatorKind
.Not)
2837
WellKnownMemberNames.ImplicitConversionName, New OperatorInfo(
UnaryOperatorKind
.Implicit),
2838
WellKnownMemberNames.ExplicitConversionName, New OperatorInfo(
UnaryOperatorKind
.Explicit),
2956
WellKnownMemberNames.TrueOperatorName, New OperatorInfo(
UnaryOperatorKind
.IsTrue),
2970
WellKnownMemberNames.FalseOperatorName, New OperatorInfo(
UnaryOperatorKind
.IsFalse),
2982
opKind As
UnaryOperatorKind
,
2990
Case
UnaryOperatorKind
.Not
2991
Dim opInfo As New OperatorInfo(
UnaryOperatorKind
.Not)
2996
Case
UnaryOperatorKind
.Minus
2998
WellKnownMemberNames.UnaryNegationOperatorName, New OperatorInfo(
UnaryOperatorKind
.Minus),
3001
Case
UnaryOperatorKind
.Plus
3003
WellKnownMemberNames.UnaryPlusOperatorName, New OperatorInfo(
UnaryOperatorKind
.Minus),
SymbolDisplay\SymbolDisplayVisitor.Members.vb (1)
400
If (opInfo.IsUnary AndAlso opInfo.UnaryOperatorKind <>
UnaryOperatorKind
.Error) OrElse
Symbols\Metadata\PE\PEMethodSymbol.vb (7)
457
Case
UnaryOperatorKind
.Implicit
459
Case
UnaryOperatorKind
.Explicit
461
Case
UnaryOperatorKind
.IsFalse,
UnaryOperatorKind
.IsTrue,
UnaryOperatorKind
.Minus,
UnaryOperatorKind
.Plus
463
Case
UnaryOperatorKind
.Not
Symbols\Source\SourceMemberContainerTypeSymbol.vb (2)
3666
Case
UnaryOperatorKind
.IsTrue
3668
Case
UnaryOperatorKind
.IsFalse