1 write to Alternative
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
2017this.Alternative = alternative;
35 references to Alternative
Microsoft.CodeAnalysis.CSharp (35)
Binder\Binder.ValueChecks.cs (8)
916CheckValueKind(conditional.Alternative.Syntax, conditional.Alternative, valueKind, checkingReceiver: false, diagnostics: diagnostics))) 3390.Intersect(GetRefEscape(conditional.Alternative, scopeOfTheContainingExpression)); 3715CheckRefEscape(conditional.Alternative.Syntax, conditional.Alternative, escapeFrom, escapeTo, checkingReceiver: false, diagnostics: diagnostics); 4111return consEscape.Intersect(GetValEscape(conditional.Alternative, scopeOfTheContainingExpression)); 4821return CheckValEscape(conditional.Alternative.Syntax, conditional.Alternative, escapeFrom, escapeTo, checkingReceiver: false, diagnostics: diagnostics);
Binder\RefSafetyAnalysis.cs (1)
630ValidateRefConditionalOperator(node.Syntax, node.Consequence, node.Alternative, _diagnostics);
CodeGen\CodeGenerator_HasHome.cs (1)
157&& HasHome(conditional.Alternative, addressKind, containingSymbol, peVerifyCompatEnabled, stackLocalsOpt);
CodeGen\EmitAddress.cs (1)
221AddExpressionTemp(EmitAddress(expr.Alternative, addressKind));
CodeGen\EmitExpression.cs (3)
3748expr.Alternative.ConstantValueOpt?.IsIntegralValueZeroOrOne(out bool isAlternativeOne) == true && 3764EmitExpression(expr.Alternative, used); 3785var mergeTypeOfAlternative = StackMergeType(expr.Alternative);
CodeGen\Optimizer.cs (1)
1466BoundExpression alternative = this.VisitExpression(node.Alternative, context);
FlowAnalysis\AbstractFlowPass.cs (1)
3241return VisitConditionalOperatorCore(node, node.IsRef, node.Condition, node.Consequence, node.Alternative);
Generated\BoundNodes.xml.Generated.cs (5)
2037if (isRef != this.IsRef || condition != this.Condition || consequence != this.Consequence || alternative != this.Alternative || constantValueOpt != this.ConstantValueOpt || !TypeSymbol.Equals(naturalTypeOpt, this.NaturalTypeOpt, TypeCompareKind.ConsiderEverything) || wasTargetTyped != this.WasTargetTyped || !TypeSymbol.Equals(type, this.Type, TypeCompareKind.ConsiderEverything)) 9966this.Visit(node.Alternative); 11092BoundExpression alternative = (BoundExpression)this.Visit(node.Alternative); 12885BoundExpression alternative = (BoundExpression)this.Visit(node.Alternative); 15405new TreeDumperNode("alternative", null, new TreeDumperNode[] { Visit(node.Alternative, null) }),
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
659var alternative = VisitExactType(node.Alternative);
Lowering\LocalRewriter\LocalRewriter_BinaryOperator.cs (3)
1616Debug.Assert(TypeSymbol.Equals(conditional.Type, conditional.Alternative.Type, TypeCompareKind.ConsiderEverything2)); 1618if (NullableAlwaysHasValue(conditional.Consequence) != null && NullableNeverHasValue(conditional.Alternative)) 1628MakeBinaryOperator(syntax, kind, conditional.Alternative, right, type, method, constrainedToTypeOpt),
Lowering\LocalRewriter\LocalRewriter_ConditionalOperator.cs (1)
25var rewrittenAlternative = VisitExpression(node.Alternative);
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (3)
1313Debug.Assert(TypeSymbol.Equals(conditional.Type, conditional.Alternative.Type, TypeCompareKind.ConsiderEverything2)); 1315if (NullableAlwaysHasValue(conditional.Consequence) != null && NullableNeverHasValue(conditional.Alternative)) 1325MakeConversionNode(null, syntax, conditional.Alternative, conversion, @checked, explicitCastInCode: false, constantValueOpt: ConstantValue.NotAvailable, rewrittenType: type),
Lowering\LocalRewriter\LocalRewriter_DeconstructionAssignmentOperator.cs (1)
70RewriteDeconstruction(lhsTargets, conversion, leftType, conditional.Alternative, isUsed: true)!,
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (3)
329Debug.Assert(TypeSymbol.Equals(conditional.Type, conditional.Alternative.Type, TypeCompareKind.ConsiderEverything2)); 331if (NullableAlwaysHasValue(conditional.Consequence) != null && NullableNeverHasValue(conditional.Alternative)) 341MakeUnaryOperator(operatorKind, syntax, method, constrainedToTypeOpt, conditional.Alternative, type),
Lowering\SpillSequenceSpiller.cs (1)
1113var alternative = VisitExpression(ref alternativeBuilder, node.Alternative);
Operations\CSharpOperationFactory.cs (1)
1576IOperation whenFalse = Create(boundConditionalOperator.Alternative);