1 write to Right
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
1651
this.
Right
= right;
112 references to Right
Microsoft.CodeAnalysis.CSharp (112)
Binder\Binder.ValueChecks.cs (8)
4416
argsOpt: [binary.Left, binary.
Right
],
4424
.Intersect(GetValEscape(binary.
Right
, scopeOfTheContainingExpression));
4440
argsOpt: [uo.Left, uo.
Right
],
5207
argsOpt: [binary.Left, binary.
Right
],
5218
CheckValEscape(binary.
Right
.Syntax, binary.
Right
, escapeFrom, escapeTo, checkingReceiver: false, diagnostics: diagnostics);
5239
argsOpt: [uo.Left, uo.
Right
],
5624
GetInterpolatedStringHandlerArgumentsForEscape(binary.
Right
, arguments);
Binder\Binder_Operators.cs (2)
780
var right = current.
Right
switch
784
_ => throw ExceptionUtilities.UnexpectedValue(current.
Right
.Kind)
Binder\Binder_TupleOperators.cs (1)
111
return new TupleBinaryOperatorInfo.Single(binary.Left.Type, binary.
Right
.Type, binary.OperatorKind, binary.Method, binary.ConstrainedToType,
BoundTree\BoundNode_Source.cs (1)
358
appendSource(binary.
Right
);
BoundTree\BoundNodeExtensions.cs (2)
134
switch (current.
Right
)
146
throw ExceptionUtilities.UnexpectedValue(current.
Right
.Kind);
BoundTree\BoundTreeRewriter.cs (1)
142
var right = (BoundExpression?)this.Visit(binary.
Right
);
BoundTree\BoundTreeWalker.cs (3)
114
rightOperands.Push(node.
Right
);
117
rightOperands.Push(binary.
Right
);
125
rightOperands.Push(binary.
Right
);
BoundTree\Constructors.cs (1)
480
return Update(OperatorKind, uncommonData, ResultKind, Left,
Right
, Type);
BoundTree\NullabilityRewriter.cs (1)
95
var right = (BoundExpression)Visit(currentBinary.
Right
);
CodeGen\EmitExpression.cs (1)
2156
if (b.OperatorKind.IsUserDefined() || !isSafeToDereferenceReceiverRefAfterEvaluatingArgument(b.
Right
))
CodeGen\EmitOperators.cs (19)
73
EmitExpression(expression.
Right
, false);
138
EmitExpression(binary.
Right
, true);
160
EmitExpression(expression.
Right
, true);
267
EmitCondExpr(condition.
Right
, sense);
306
Debug.Assert(binOp.
Right
.Type.SpecialType == SpecialType.System_Boolean);
315
Debug.Assert(binOp.
Right
.Type.SpecialType == SpecialType.System_Boolean);
332
Debug.Assert(binOp.
Right
.Type.SpecialType == SpecialType.System_Boolean);
333
EmitBinaryCondOperatorHelper(ILOpCode.And, binOp.Left, binOp.
Right
, sense);
338
Debug.Assert(binOp.
Right
.Type.SpecialType == SpecialType.System_Boolean);
339
EmitBinaryCondOperatorHelper(ILOpCode.Or, binOp.Left, binOp.
Right
, sense);
344
Debug.Assert(binOp.
Right
.Type.SpecialType == SpecialType.System_Boolean);
348
EmitBinaryCondOperatorHelper(ILOpCode.Xor, binOp.Left, binOp.
Right
, true);
350
EmitBinaryCondOperatorHelper(ILOpCode.Ceq, binOp.Left, binOp.
Right
, true);
361
var comparand = binOp.
Right
;
416
EmitBinaryCondOperatorHelper(ILOpCode.Ceq, binOp.Left, binOp.
Right
, sense);
450
EmitBinaryCondOperatorHelper(s_compOpCodes[opIdx], binOp.Left, binOp.
Right
, sense);
659
Debug.Assert(TypeSymbol.Equals(expression.Left.Type, expression.
Right
.Type, TypeCompareKind.ConsiderEverything2));
664
enumType = expression.
Right
.Type;
789
return IsUnsigned(Binder.GetEnumPromotedType(op.
Right
.Type.GetEnumUnderlyingType().SpecialType));
CodeGen\EmitStatement.cs (6)
240
nonConstOp = condition.
Right
;
244
constOp = (condition.
Right
.ConstantValueOpt != null) ? condition.
Right
: null;
457
stack.Push((binary.
Right
, top.destBox, top.sense));
466
stack.Push((binary.
Right
, top.destBox, top.sense));
514
EmitExpression(binOp.
Right
, true);
CodeGen\Optimizer.cs (3)
1519
var right = (BoundExpression)this.Visit(binary.
Right
);
1557
BoundExpression right = (BoundExpression)this.Visit(node.
Right
);
2100
var right = (BoundExpression)this.Visit(binary.
Right
);
Compilation\CSharpSemanticModel.cs (3)
3859
((binaryOperator.Left.IsLiteralNull() && binaryOperator.
Right
.Type.IsNullableType()) ||
3860
(binaryOperator.
Right
.IsLiteralNull() && binaryOperator.Left.Type.IsNullableType())) &&
3875
binaryOperator.
Right
.Type,
Compilation\MemberSemanticModel.NodeMapBuilder.cs (2)
198
stack.Push(binOp.
Right
);
209
stack.Push(binOp.
Right
);
FlowAnalysis\AbstractFlowPass.cs (6)
2462
right = binOp.
Right
;
2467
right = udBinOp.
Right
;
2642
if (isKnownNullOrNotNull(binary.Left) && TryVisitConditionalAccess(binary.
Right
, out var stateWhenNotNull))
2652
else if (IsConditionalState && binary.
Right
.ConstantValueOpt is { IsBoolean: true } rightConstant)
2656
Visit(binary.
Right
);
2667
Visit(binary.
Right
);
FlowAnalysis\NullableWalker.cs (5)
5067
var inferredResult = ReinferAndVisitBinaryOperator(binary, binary.OperatorKind, binary.Method, binary.Type, binary.Left, leftOperand, leftConversion, leftType, binary.
Right
, rightOperand, rightConversion, rightType);
5214
var (rightOperand, rightConversion) = RemoveConversion(binary.
Right
, includeExplicitConversions: false);
5226
if (binary.
Right
.ConstantValueOpt?.IsNull == true)
5232
operandComparedToNull = binary.
Right
;
5251
operandComparedToNonNull = binary.
Right
;
FlowAnalysis\NullableWalker.DebugVerifier.cs (1)
308
Visit(node.
Right
);
Generated\BoundNodes.xml.Generated.cs (8)
1683
if (operatorKind != this.OperatorKind || data != this.Data || resultKind != this.ResultKind || left != this.Left || right != this.
Right
|| !TypeSymbol.Equals(type, this.Type, TypeCompareKind.ConsiderEverything))
1766
if (operatorKind != this.OperatorKind || !Symbols.SymbolEqualityComparer.ConsiderEverything.Equals(logicalOperator, this.LogicalOperator) || !Symbols.SymbolEqualityComparer.ConsiderEverything.Equals(trueOperator, this.TrueOperator) || !Symbols.SymbolEqualityComparer.ConsiderEverything.Equals(falseOperator, this.FalseOperator) || !TypeSymbol.Equals(constrainedToTypeOpt, this.ConstrainedToTypeOpt, TypeCompareKind.ConsiderEverything) || resultKind != this.ResultKind || originalUserDefinedOperatorsOpt != this.OriginalUserDefinedOperatorsOpt || left != this.Left || right != this.
Right
|| !TypeSymbol.Equals(type, this.Type, TypeCompareKind.ConsiderEverything))
9910
this.Visit(node.
Right
);
9922
this.Visit(node.
Right
);
11020
BoundExpression right = (BoundExpression)this.Visit(node.
Right
);
11034
BoundExpression right = (BoundExpression)this.Visit(node.
Right
);
15297
new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.
Right
, null) }),
15324
new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.
Right
, null) }),
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (2)
195
return VisitBinaryOperator(binOp.OperatorKind, binOp.Method, binOp.Type, binOp.Left, binOp.
Right
);
198
return VisitBinaryOperator(userDefCondLogOp.OperatorKind, userDefCondLogOp.LogicalOperator, userDefCondLogOp.Type, userDefCondLogOp.Left, userDefCondLogOp.
Right
);
Lowering\DiagnosticsPass_ExpressionTrees.cs (1)
664
Visit(current.
Right
);
Lowering\DiagnosticsPass_Warnings.cs (27)
269
CheckUnsafeType(node.
Right
);
272
CheckForBitwiseOrSignExtend(node, node.OperatorKind, node.Left, node.
Right
);
317
if (node.Left.ConstantValueOpt != null && node.
Right
.ConstantValueOpt == null && node.
Right
.Kind == BoundKind.Conversion)
319
CheckVacuousComparisons(node, node.Left.ConstantValueOpt, node.
Right
);
322
if (node.
Right
.ConstantValueOpt != null && node.Left.ConstantValueOpt == null && node.Left.Kind == BoundKind.Conversion)
324
CheckVacuousComparisons(node, node.
Right
.ConstantValueOpt, node.Left);
330
if (node.Left.Type.SpecialType == SpecialType.System_Object && !IsExplicitCast(node.Left) && !(node.Left.ConstantValueOpt != null && node.Left.ConstantValueOpt.IsNull) && ConvertedHasEqual(node.OperatorKind, node.
Right
, out t))
335
else if (node.
Right
.Type.SpecialType == SpecialType.System_Object && !IsExplicitCast(node.
Right
) && !(node.
Right
.ConstantValueOpt != null && node.
Right
.ConstantValueOpt.IsNull) && ConvertedHasEqual(node.OperatorKind, node.Left, out t))
386
if (!node.HasAnyErrors && IsSameLocalOrField(node.Left, node.
Right
))
768
if (node.
Right
.IsLiteralNull() && node.Left.NullableAlwaysHasValue())
772
else if (node.Left.IsLiteralNull() && node.
Right
.NullableAlwaysHasValue())
774
Error(ErrorCode.WRN_NubExprIsConstBool, node, always, node.
Right
.Type.GetNullableUnderlyingType(), node.
Right
.Type);
798
if (node.
Right
.NullableNeverHasValue())
800
Error(ErrorCode.WRN_CmpAlwaysFalse, node, GetTypeForLiftedComparisonWarning(node.
Right
));
816
if (node.
Right
.NullableNeverHasValue() && node.Left.NullableAlwaysHasValue())
818
Error(node.OperatorKind.IsUserDefined() ? ErrorCode.WRN_NubExprIsConstBool2 : ErrorCode.WRN_NubExprIsConstBool, node, always, node.Left.Type.GetNullableUnderlyingType(), GetTypeForLiftedComparisonWarning(node.
Right
));
820
else if (node.Left.NullableNeverHasValue() && node.
Right
.NullableAlwaysHasValue())
822
Error(node.OperatorKind.IsUserDefined() ? ErrorCode.WRN_NubExprIsConstBool2 : ErrorCode.WRN_NubExprIsConstBool, node, always, node.
Right
.Type.GetNullableUnderlyingType(), GetTypeForLiftedComparisonWarning(node.Left));
828
if ((node.Left.NullableNeverHasValue() && node.
Right
.IsNullableNonBoolean()) ||
829
(node.Left.IsNullableNonBoolean() && node.
Right
.NullableNeverHasValue()))
834
if (node.
Right
.NullableNeverHasValue() || node.Left.NullableNeverHasValue())
845
if (node.
Right
.NullableNeverHasValue() || node.Left.NullableNeverHasValue())
Lowering\LocalRewriter\LocalRewriter_BinaryOperator.cs (2)
76
BoundExpression loweredRight = VisitExpression(node.
Right
);
151
BoundExpression loweredRight = VisitExpression(original.
Right
);
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (1)
197
stack.Push(utf8Addition.
Right
);
Lowering\MethodToClassRewriter.cs (2)
277
(BoundExpression)Visit(node.
Right
),
320
(BoundExpression)Visit(node.
Right
),
Lowering\SpillSequenceSpiller.cs (1)
983
var right = VisitExpression(ref builder, node.
Right
);
Operations\CSharpOperationFactory.cs (2)
1470
IOperation right = Create(currentBinary.
Right
);
2441
var right = createContent(binaryOperator.
Right
);