7 instantiations of BoundConditionalOperator
Microsoft.CodeAnalysis.CSharp (7)
Binder\Binder_Conversions.cs (1)
2484return new BoundConditionalOperator(source.Syntax, isRef: false, condition, trueExpr, falseExpr, constantValue, source.Type, wasTargetTyped: targetTyped, destination, hasErrors)
Binder\Binder_Operators.cs (2)
6009return new BoundConditionalOperator(node, isRef: false, condition, trueExpr, falseExpr, constantValue, naturalTypeOpt: bestType, wasTargetTyped: false, bestType, hasErrors); 6044return new BoundConditionalOperator(node, isRef: true, condition, trueExpr, falseExpr, constantValueOpt: null, type, wasTargetTyped: false, type, hasErrors);
Generated\BoundNodes.xml.Generated.cs (1)
2072var result = new BoundConditionalOperator(this.Syntax, isRef, condition, consequence, alternative, constantValueOpt, naturalTypeOpt, wasTargetTyped, type, this.HasErrors);
Lowering\LocalRewriter\LocalRewriter_ConditionalOperator.cs (1)
62return new BoundConditionalOperator(
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (1)
572new BoundConditionalOperator(factory.Syntax, false, condition, consequenceAssignment, alternativeAssignment, ConstantValue.NotAvailable, localType, wasTargetTyped: false, localType));
Lowering\SyntheticBoundNodeFactory.cs (1)
956return new BoundConditionalOperator(Syntax, isRef, condition, consequence, alternative, constantValueOpt: null, type, wasTargetTyped: false, type) { WasCompilerGenerated = true };
60 references to BoundConditionalOperator
Microsoft.CodeAnalysis.CSharp (60)
Binder\Binder_Invocation.cs (1)
1437if (receiver is BoundConditionalOperator { IsRef: true } conditional)
Binder\Binder.ValueChecks.cs (10)
1177var conditional = (BoundConditionalOperator)expr; 3762var conditional = (BoundConditionalOperator)expr; 4061var conditional = (BoundConditionalOperator)expr; 4425var conditional = (BoundConditionalOperator)expr; 5142var conditional = (BoundConditionalOperator)expr;
Binder\RefSafetyAnalysis.cs (1)
753public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
BoundTree\BoundTreeVisitors.cs (1)
50return VisitConditionalOperator(node as BoundConditionalOperator, arg);
CodeGen\CodeGenerator_HasHome.cs (2)
209var conditional = (BoundConditionalOperator)expression;
CodeGen\EmitAddress.cs (2)
161EmitConditionalOperatorAddress((BoundConditionalOperator)expression, addressKind, used); 234private void EmitConditionalOperatorAddress(BoundConditionalOperator expr, AddressKind addressKind, bool used)
CodeGen\EmitExpression.cs (5)
297EmitConditionalOperator((BoundConditionalOperator)expression, used); 2952var left = (BoundConditionalOperator)assignmentTarget; 3183Debug.Assert(((BoundConditionalOperator)expression).IsRef); 3807private void EmitConditionalOperator(BoundConditionalOperator expr, bool used)
CodeGen\Optimizer.cs (2)
1074Debug.Assert(((BoundConditionalOperator)lhs).IsRef, "only ref ternaries are assignable"); 1462public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
Compilation\CSharpSemanticModel.cs (3)
2158else if (boundExpr is BoundConditionalOperator { WasTargetTyped: true } cond) 3594var conditional = (BoundConditionalOperator)boundNode;
FlowAnalysis\AbstractFlowPass.cs (1)
3277public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
FlowAnalysis\NullableWalker.cs (3)
5270return node is BoundConditionalOperator { WasTargetTyped: true } or 6547Debug.Assert(node is not BoundConditionalOperator { WasTargetTyped: true }, """ 6600bool wasTargetTyped = node is BoundConditionalOperator { WasTargetTyped: true };
Generated\BoundNodes.xml.Generated.cs (10)
2068public BoundConditionalOperator Update(bool isRef, BoundExpression condition, BoundExpression consequence, BoundExpression alternative, ConstantValue? constantValueOpt, TypeSymbol? naturalTypeOpt, bool wasTargetTyped, TypeSymbol type) 2072var result = new BoundConditionalOperator(this.Syntax, isRef, condition, consequence, alternative, constantValueOpt, naturalTypeOpt, wasTargetTyped, type, this.HasErrors); 9175return VisitConditionalOperator((BoundConditionalOperator)node, arg); 9608public virtual R VisitConditionalOperator(BoundConditionalOperator node, A arg) => this.DefaultVisit(node, arg); 9849public virtual BoundNode? VisitConditionalOperator(BoundConditionalOperator node) => this.DefaultVisit(node); 10232public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node) 11424public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node) 13367public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node) 13373BoundConditionalOperator updatedNode; 15924public override TreeDumperNode VisitConditionalOperator(BoundConditionalOperator node, object? arg) => new TreeDumperNode("conditionalOperator", null, new TreeDumperNode[]
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (2)
207return VisitConditionalOperator((BoundConditionalOperator)node); 662private BoundExpression VisitConditionalOperator(BoundConditionalOperator node)
Lowering\LocalRewriter\LocalRewriter_BinaryOperator.cs (2)
1632BoundConditionalOperator conditional = (BoundConditionalOperator)seq.Value;
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (1)
879Debug.Assert(((BoundConditionalOperator)originalLHS).IsRef);
Lowering\LocalRewriter\LocalRewriter_ConditionalOperator.cs (1)
18public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (3)
43Debug.Assert(node.Operand is BoundConditionalOperator { WasTargetTyped: true }); 1381BoundConditionalOperator conditional = (BoundConditionalOperator)seq.Value;
Lowering\LocalRewriter\LocalRewriter_DeconstructionAssignmentOperator.cs (2)
64var conditional = (BoundConditionalOperator)right;
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (2)
327BoundConditionalOperator conditional = (BoundConditionalOperator)seq.Value;
Lowering\LocalRewriter\LocalRewriter.cs (1)
1096return ((BoundConditionalOperator)expr).IsRef;
Lowering\SpillSequenceSpiller.cs (1)
1188public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
Lowering\StateMachineRewriter\RefInitializationHoister.cs (2)
252var conditional = (BoundConditionalOperator)expr;
Operations\CSharpOperationFactory.cs (2)
132return CreateBoundConditionalOperatorOperation((BoundConditionalOperator)boundNode); 1657private IConditionalOperation CreateBoundConditionalOperatorOperation(BoundConditionalOperator boundConditionalOperator)