1 write to LeftOperand
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
1902
this.
LeftOperand
= leftOperand;
30 references to LeftOperand
Microsoft.CodeAnalysis.CSharp (30)
Binder\Binder.ValueChecks.cs (3)
4116
return GetValEscape(coalescingOp.
LeftOperand
, localScopeDepth)
4832
return CheckValEscape(coalescingOp.
LeftOperand
.Syntax, coalescingOp.
LeftOperand
, escapeFrom, escapeTo, checkingReceiver, diagnostics) &&
CodeGen\EmitExpression.cs (3)
3843
EmitExpression(expr.
LeftOperand
, used: true);
3846
var mergeTypeOfLeftValue = StackMergeType(expr.
LeftOperand
);
3864
EmitBox(expr.Type, expr.
LeftOperand
.Syntax);
CodeGen\Optimizer.cs (1)
1572
BoundExpression left = (BoundExpression)this.Visit(node.
LeftOperand
);
FlowAnalysis\AbstractFlowPass.cs (4)
2935
if (IsConstantNull(node.
LeftOperand
))
2937
VisitRvalue(node.
LeftOperand
);
2943
if (VisitPossibleConditionalAccess(node.
LeftOperand
, out var stateWhenNotNull))
2954
if (node.
LeftOperand
.ConstantValueOpt != null)
FlowAnalysis\NullableWalker.cs (4)
5646
BoundExpression leftOperand = node.
LeftOperand
;
5700
GenerateConversionForConditionalOperator(node.
LeftOperand
, leftType, rightType, reportMismatch: false, isChecked: node.Checked) is { Exists: true } conversion)
5713
var conversion = GenerateConversionForConditionalOperator(node.
LeftOperand
, leftType, rightType, reportMismatch: true, isChecked: node.Checked);
5718
node.
LeftOperand
,
Generated\BoundNodes.xml.Generated.cs (5)
1923
if (leftOperand != this.
LeftOperand
|| rightOperand != this.RightOperand || leftPlaceholder != this.LeftPlaceholder || leftConversion != this.LeftConversion || operatorResultKind != this.OperatorResultKind || @checked != this.Checked || !TypeSymbol.Equals(type, this.Type, TypeCompareKind.ConsiderEverything))
9981
this.Visit(node.
LeftOperand
);
11102
BoundExpression leftOperand = (BoundExpression)this.Visit(node.
LeftOperand
);
12861
BoundExpression leftOperand = (BoundExpression)this.Visit(node.
LeftOperand
);
15404
new TreeDumperNode("leftOperand", null, new TreeDumperNode[] { Visit(node.
LeftOperand
, null) }),
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
875
var left = Visit(node.
LeftOperand
);
Lowering\DiagnosticsPass_ExpressionTrees.cs (3)
912
if (_inExpressionLambda && (node.
LeftOperand
.IsLiteralNull() || node.
LeftOperand
.IsLiteralDefault()))
914
Error(ErrorCode.ERR_ExpressionTreeContainsBadCoalesce, node.
LeftOperand
);
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (1)
15
BoundExpression rewrittenLeft = VisitExpression(node.
LeftOperand
);
Lowering\LocalRewriter\LocalRewriter_StringConcat.cs (1)
211
arguments = ImmutableArray.Create(boundCoalesce.
LeftOperand
);
Lowering\SpillSequenceSpiller.cs (2)
1242
left = VisitExpression(ref builder, node.
LeftOperand
);
1247
left = VisitExpression(ref leftBuilder, node.
LeftOperand
);
Operations\CSharpOperationFactory.cs (2)
1587
IOperation value = Create(boundNullCoalescingOperator.
LeftOperand
);
1596
boundNullCoalescingOperator.Type.Equals(boundNullCoalescingOperator.
LeftOperand
.Type?.StrippedType(), TypeCompareKind.IgnoreCustomModifiersAndArraySizesAndLowerBounds | TypeCompareKind.IgnoreNullableModifiersForReferenceTypes))