13 instantiations of BoundNullCoalescingOperator
Microsoft.CodeAnalysis.CSharp (13)
Binder\Binder_Operators.cs (8)
5580return new BoundNullCoalescingOperator(node, leftOperand, rightOperand, 5595return new BoundNullCoalescingOperator(node, leftOperand, rightOperand, 5604return new BoundNullCoalescingOperator(node, leftOperand, rightOperand, 5660return new BoundNullCoalescingOperator(node, leftOperand, rightOperand, 5678return new BoundNullCoalescingOperator(node, leftOperand, convertedRightOperand, 5695return new BoundNullCoalescingOperator(node, leftOperand, convertedRightOperand, 5747return new BoundNullCoalescingOperator(node, leftOperand, rightOperand, leftPlaceholder, leftConversion, resultKind, @checked: CheckOverflowAtRuntime, optRightType); 5761return new BoundNullCoalescingOperator(node, leftOperand, rightOperand, leftPlaceholder, leftConversion, resultKind, @checked: CheckOverflowAtRuntime, optRightType);
Generated\BoundNodes.xml.Generated.cs (1)
1961var result = new BoundNullCoalescingOperator(this.Syntax, leftOperand, rightOperand, leftPlaceholder, leftConversion, operatorResultKind, @checked, type, this.HasErrors);
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (2)
56return new BoundNullCoalescingOperator(syntax, rewrittenLeft, rewrittenRight, leftPlaceholder, leftConversion, resultKind, @checked: false, rewrittenResultType); 96return new BoundNullCoalescingOperator(syntax, rewrittenLeft, rewrittenRight, leftPlaceholder: null, leftConversion: null, resultKind, @checked: false, rewrittenResultType);
Lowering\LocalRewriter\LocalRewriter_StringInterpolation.cs (1)
197result = new BoundNullCoalescingOperator(result.Syntax, result, _factory.StringLiteral(""), leftPlaceholder: placeholder, leftConversion: placeholder, BoundNullCoalescingOperatorResultKind.LeftType, @checked: false, result.Type) { WasCompilerGenerated = true };
Lowering\SyntheticBoundNodeFactory.cs (1)
945return new BoundNullCoalescingOperator(Syntax, left, right, leftPlaceholder: null, leftConversion: null, BoundNullCoalescingOperatorResultKind.LeftType, @checked: false, left.Type) { WasCompilerGenerated = true };
28 references to BoundNullCoalescingOperator
Microsoft.CodeAnalysis.CSharp (28)
Binder\Binder.ValueChecks.cs (4)
4440var coalescingOp = (BoundNullCoalescingOperator)expr; 5120var coalescingOp = (BoundNullCoalescingOperator)expr;
BoundTree\BoundTreeVisitors.cs (1)
48return VisitNullCoalescingOperator(node as BoundNullCoalescingOperator, arg);
CodeGen\EmitExpression.cs (2)
206EmitNullCoalescingOperator((BoundNullCoalescingOperator)expression, used); 3876private void EmitNullCoalescingOperator(BoundNullCoalescingOperator expr, bool used)
CodeGen\Optimizer.cs (1)
1578public override BoundNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
FlowAnalysis\AbstractFlowPass.cs (1)
2961public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
FlowAnalysis\NullableWalker.cs (1)
6071public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
Generated\BoundNodes.xml.Generated.cs (10)
1957public BoundNullCoalescingOperator Update(BoundExpression leftOperand, BoundExpression rightOperand, BoundValuePlaceholder? leftPlaceholder, BoundExpression? leftConversion, BoundNullCoalescingOperatorResultKind operatorResultKind, bool @checked, TypeSymbol type) 1961var result = new BoundNullCoalescingOperator(this.Syntax, leftOperand, rightOperand, leftPlaceholder, leftConversion, operatorResultKind, @checked, type, this.HasErrors); 9064return VisitNullCoalescingOperator((BoundNullCoalescingOperator)node, arg); 9494public virtual R VisitNullCoalescingOperator(BoundNullCoalescingOperator node, A arg) => this.DefaultVisit(node, arg); 9732public virtual BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) => this.DefaultVisit(node); 10092public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 11253public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 13135public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 13141BoundNullCoalescingOperator updatedNode; 15686public override TreeDumperNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node, object? arg) => new TreeDumperNode("nullCoalescingOperator", null, new TreeDumperNode[]
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (2)
228return VisitNullCoalescingOperator((BoundNullCoalescingOperator)node); 891private BoundExpression VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
Lowering\DiagnosticsPass_ExpressionTrees.cs (1)
970public override BoundNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (1)
13public override BoundNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
Lowering\LocalRewriter\LocalRewriter_StringConcat.cs (1)
305else if (argument is BoundNullCoalescingOperator { LeftOperand: { Type.SpecialType: SpecialType.System_String } left, RightOperand: BoundLiteral { ConstantValueOpt: { IsString: true, RopeValue.IsEmpty: true } } })
Lowering\SpillSequenceSpiller.cs (1)
1246public override BoundNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
Operations\CSharpOperationFactory.cs (2)
134return CreateBoundNullCoalescingOperatorOperation((BoundNullCoalescingOperator)boundNode); 1626private ICoalesceOperation CreateBoundNullCoalescingOperatorOperation(BoundNullCoalescingOperator boundNullCoalescingOperator)