22 instantiations of BoundValuePlaceholder
Microsoft.CodeAnalysis.CSharp (22)
Binder\Binder_Conversions.cs (4)
77var placeholder2 = new BoundValuePlaceholder(source.Syntax, source.Type); 327new BoundValuePlaceholder(source.Syntax, source.Type.GetNullableUnderlyingType()), 356new BoundValuePlaceholder(source.Syntax, source.Type.GetNullableUnderlyingType()), 384new BoundValuePlaceholder(source.Syntax, sourceTypes[i].Type),
Binder\Binder_Deconstruct.cs (2)
309var operandPlaceholder = new BoundValuePlaceholder(syntax, ErrorTypeSymbol.UnknownResultType).MakeCompilerGenerated(); 334var operandPlaceholder = new BoundValuePlaceholder(syntax, tupleOrDeconstructedTypes[i]).MakeCompilerGenerated();
Binder\Binder_Operators.cs (11)
68var placeholder = new BoundValuePlaceholder(right.Syntax, left.HasDynamicType() ? left.Type : right.Type).MakeCompilerGenerated(); 256var leftPlaceholder = new BoundValuePlaceholder(left.Syntax, leftType).MakeCompilerGenerated(); 1219var operandPlaceholder = new BoundValuePlaceholder(left.Syntax, left.Type).MakeCompilerGenerated(); 2516var operandPlaceholder = new BoundValuePlaceholder(operand.Syntax, operand.Type).MakeCompilerGenerated(); 4178operandPlaceholder = new BoundValuePlaceholder(operand.Syntax, operand.Type).MakeCompilerGenerated(); 4225operandPlaceholder = new BoundValuePlaceholder(operand.Syntax, operand.Type).MakeCompilerGenerated(); 4443var leftPlaceholder = new BoundValuePlaceholder(leftOperand.Syntax, optLeftType).MakeCompilerGenerated(); 4465var leftPlaceholder = new BoundValuePlaceholder(leftOperand.Syntax, optLeftType0).MakeCompilerGenerated(); 4484var leftPlaceholder = new BoundValuePlaceholder(leftOperand.Syntax, optLeftType).MakeCompilerGenerated(); 4534var leftPlaceholder = new BoundValuePlaceholder(leftOperand.Syntax, optLeftType0).MakeCompilerGenerated(); 4548var leftPlaceholder = new BoundValuePlaceholder(leftOperand.Syntax, optLeftType).MakeCompilerGenerated();
Binder\Binder_Statements.cs (1)
1381elementPlaceholder = new BoundValuePlaceholder(initializerSyntax, pointerType).MakeCompilerGenerated();
Binder\ForEachLoopBinder.cs (1)
864BoundExpression span = new BoundValuePlaceholder(collectionExpr.Syntax, spanType).MakeCompilerGenerated();
Binder\Semantics\Conversions\Conversions.cs (1)
241new BoundValuePlaceholder(element.Syntax, enumeratorInfo.ElementType),
Generated\BoundNodes.xml.Generated.cs (1)
490var result = new BoundValuePlaceholder(this.Syntax, type, this.HasErrors);
Lowering\LocalRewriter\LocalRewriter_StringInterpolation.cs (1)
196var placeholder = new BoundValuePlaceholder(result.Syntax, result.Type);
119 references to BoundValuePlaceholder
Microsoft.CodeAnalysis.CSharp (119)
Binder\Binder_Conversions.cs (2)
70if (source is BoundValuePlaceholder placeholder1) 77var placeholder2 = new BoundValuePlaceholder(source.Syntax, source.Type);
Binder\Binder_Deconstruct.cs (3)
295var nestedConversions = ArrayBuilder<(BoundValuePlaceholder?, BoundExpression?)>.GetInstance(count); 309var operandPlaceholder = new BoundValuePlaceholder(syntax, ErrorTypeSymbol.UnknownResultType).MakeCompilerGenerated(); 334var operandPlaceholder = new BoundValuePlaceholder(syntax, tupleOrDeconstructedTypes[i]).MakeCompilerGenerated();
Binder\Binder_Expressions.cs (1)
6585var addElementPlaceholder = new BoundValuePlaceholder(syntax, enumeratorInfo.ElementType);
Binder\Binder_Operators.cs (12)
68var placeholder = new BoundValuePlaceholder(right.Syntax, left.HasDynamicType() ? left.Type : right.Type).MakeCompilerGenerated(); 212var finalPlaceholder = new BoundValuePlaceholder(node, bestSignature.ReturnType); 256var leftPlaceholder = new BoundValuePlaceholder(left.Syntax, leftType).MakeCompilerGenerated(); 1219var operandPlaceholder = new BoundValuePlaceholder(left.Syntax, left.Type).MakeCompilerGenerated(); 2494var resultPlaceholder = new BoundValuePlaceholder(node, signature.ReturnType).MakeCompilerGenerated(); 2516var operandPlaceholder = new BoundValuePlaceholder(operand.Syntax, operand.Type).MakeCompilerGenerated(); 4169BoundValuePlaceholder operandPlaceholder; 4443var leftPlaceholder = new BoundValuePlaceholder(leftOperand.Syntax, optLeftType).MakeCompilerGenerated(); 4465var leftPlaceholder = new BoundValuePlaceholder(leftOperand.Syntax, optLeftType0).MakeCompilerGenerated(); 4484var leftPlaceholder = new BoundValuePlaceholder(leftOperand.Syntax, optLeftType).MakeCompilerGenerated(); 4534var leftPlaceholder = new BoundValuePlaceholder(leftOperand.Syntax, optLeftType0).MakeCompilerGenerated(); 4548var leftPlaceholder = new BoundValuePlaceholder(leftOperand.Syntax, optLeftType).MakeCompilerGenerated();
Binder\Binder_Statements.cs (1)
1370BoundValuePlaceholder elementPlaceholder;
Binder\Binder_TupleOperators.cs (2)
107out BoundExpression conversionIntoBoolOperator, out BoundValuePlaceholder conversionIntoBoolOperatorPlaceholder, 126out BoundExpression conversionForBool, out BoundValuePlaceholder conversionForBoolPlaceholder, out UnaryOperatorSignature boolOperator)
Binder\ForEachEnumeratorInfo.cs (3)
46public readonly BoundValuePlaceholder? CurrentPlaceholder; 63BoundValuePlaceholder? currentPlaceholder, 113public BoundValuePlaceholder? CurrentPlaceholder;
Binder\ForEachLoopBinder.cs (1)
487var elementPlaceholder = new BoundValuePlaceholder(_syntax, inferredType.Type).MakeCompilerGenerated();
Binder\Semantics\Conversions\Conversion.cs (4)
96internal DeconstructionUncommonData(DeconstructMethodInfo deconstructMethodInfoOpt, ImmutableArray<(BoundValuePlaceholder? placeholder, BoundExpression? conversion)> deconstructConversionInfo) 104internal readonly ImmutableArray<(BoundValuePlaceholder? placeholder, BoundExpression? conversion)> DeconstructConversionInfo; 180internal Conversion(ConversionKind kind, DeconstructMethodInfo deconstructMethodInfo, ImmutableArray<(BoundValuePlaceholder? placeholder, BoundExpression? conversion)> deconstructConversionInfo) 538internal ImmutableArray<(BoundValuePlaceholder? placeholder, BoundExpression? conversion)> DeconstructConversionInfo
BoundTree\BoundNode.cs (2)
443public static Conversion GetConversion(BoundExpression? conversion, BoundValuePlaceholder? placeholder) 476case BoundValuePlaceholder valuePlaceholder when (object)valuePlaceholder == placeholder:
BoundTree\Constructors.cs (8)
679BoundValuePlaceholder? leftPlaceholder, 681BoundValuePlaceholder? finalPlaceholder, 693BoundValuePlaceholder? leftPlaceholder, 695BoundValuePlaceholder? finalPlaceholder, 736BoundValuePlaceholder? operandPlaceholder, 738BoundValuePlaceholder? resultPlaceholder, 747public BoundIncrementOperator Update(UnaryOperatorKind operatorKind, BoundExpression operand, MethodSymbol? methodOpt, TypeSymbol? constrainedToTypeOpt, BoundValuePlaceholder? operandPlaceholder, BoundExpression? operandConversion, BoundValuePlaceholder? resultPlaceholder, BoundExpression? resultConversion, LookupResultKind resultKind, TypeSymbol type)
BoundTree\TupleBinaryOperatorInfo.cs (2)
51internal readonly BoundValuePlaceholder? ConversionForBoolPlaceholder; 62BoundValuePlaceholder? conversionForBoolPlaceholder,
FlowAnalysis\NullableWalker.cs (2)
10567private void VisitTupleDeconstructionArguments(ArrayBuilder<DeconstructionVariable> variables, ImmutableArray<(BoundValuePlaceholder? placeholder, BoundExpression? conversion)> deconstructConversionInfo, BoundExpression right, TypeWithState? rightResultOpt) 11099public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
Generated\BoundNodes.xml.Generated.cs (59)
486public BoundValuePlaceholder Update(TypeSymbol? type) 490var result = new BoundValuePlaceholder(this.Syntax, type, this.HasErrors); 1225public BoundIncrementOperator(SyntaxNode syntax, UnaryOperatorKind operatorKind, BoundExpression operand, MethodSymbol? methodOpt, TypeSymbol? constrainedToTypeOpt, BoundValuePlaceholder? operandPlaceholder, BoundExpression? operandConversion, BoundValuePlaceholder? resultPlaceholder, BoundExpression? resultConversion, LookupResultKind resultKind, ImmutableArray<MethodSymbol> originalUserDefinedOperatorsOpt, TypeSymbol type, bool hasErrors = false) 1249public BoundValuePlaceholder? OperandPlaceholder { get; } 1251public BoundValuePlaceholder? ResultPlaceholder { get; } 1259public BoundIncrementOperator Update(UnaryOperatorKind operatorKind, BoundExpression operand, MethodSymbol? methodOpt, TypeSymbol? constrainedToTypeOpt, BoundValuePlaceholder? operandPlaceholder, BoundExpression? operandConversion, BoundValuePlaceholder? resultPlaceholder, BoundExpression? resultConversion, LookupResultKind resultKind, ImmutableArray<MethodSymbol> originalUserDefinedOperatorsOpt, TypeSymbol type) 1778public BoundCompoundAssignmentOperator(SyntaxNode syntax, BinaryOperatorSignature @operator, BoundExpression left, BoundExpression right, BoundValuePlaceholder? leftPlaceholder, BoundExpression? leftConversion, BoundValuePlaceholder? finalPlaceholder, BoundExpression? finalConversion, LookupResultKind resultKind, ImmutableArray<MethodSymbol> originalUserDefinedOperatorsOpt, TypeSymbol type, bool hasErrors = false) 1801public BoundValuePlaceholder? LeftPlaceholder { get; } 1803public BoundValuePlaceholder? FinalPlaceholder { get; } 1811public BoundCompoundAssignmentOperator Update(BinaryOperatorSignature @operator, BoundExpression left, BoundExpression right, BoundValuePlaceholder? leftPlaceholder, BoundExpression? leftConversion, BoundValuePlaceholder? finalPlaceholder, BoundExpression? finalConversion, LookupResultKind resultKind, ImmutableArray<MethodSymbol> originalUserDefinedOperatorsOpt, TypeSymbol type) 1894public BoundNullCoalescingOperator(SyntaxNode syntax, BoundExpression leftOperand, BoundExpression rightOperand, BoundValuePlaceholder? leftPlaceholder, BoundExpression? leftConversion, BoundNullCoalescingOperatorResultKind operatorResultKind, bool @checked, TypeSymbol type, bool hasErrors = false) 1913public BoundValuePlaceholder? LeftPlaceholder { get; } 1921public BoundNullCoalescingOperator Update(BoundExpression leftOperand, BoundExpression rightOperand, BoundValuePlaceholder? leftPlaceholder, BoundExpression? leftConversion, BoundNullCoalescingOperatorResultKind operatorResultKind, bool @checked, TypeSymbol type) 2883public BoundAsOperator(SyntaxNode syntax, BoundExpression operand, BoundTypeExpression targetType, BoundValuePlaceholder? operandPlaceholder, BoundExpression? operandConversion, TypeSymbol type, bool hasErrors = false) 2900public BoundValuePlaceholder? OperandPlaceholder { get; } 2906public BoundAsOperator Update(BoundExpression operand, BoundTypeExpression targetType, BoundValuePlaceholder? operandPlaceholder, BoundExpression? operandConversion, TypeSymbol type) 3093public BoundFixedLocalCollectionInitializer(SyntaxNode syntax, TypeSymbol elementPointerType, BoundValuePlaceholder? elementPointerPlaceholder, BoundExpression? elementPointerConversion, BoundExpression expression, MethodSymbol? getPinnableOpt, TypeSymbol type, bool hasErrors = false) 3110public BoundValuePlaceholder? ElementPointerPlaceholder { get; } 3118public BoundFixedLocalCollectionInitializer Update(TypeSymbol elementPointerType, BoundValuePlaceholder? elementPointerPlaceholder, BoundExpression? elementPointerConversion, BoundExpression expression, MethodSymbol? getPinnableOpt, TypeSymbol type) 4035public BoundForEachStatement(SyntaxNode syntax, ForEachEnumeratorInfo? enumeratorInfoOpt, BoundValuePlaceholder? elementPlaceholder, BoundExpression? elementConversion, BoundTypeExpression iterationVariableType, ImmutableArray<LocalSymbol> iterationVariables, BoundExpression? iterationErrorExpressionOpt, BoundExpression expression, BoundForEachDeconstructStep? deconstructionOpt, BoundAwaitableInfo? awaitOpt, BoundStatement body, LabelSymbol breakLabel, LabelSymbol continueLabel, bool hasErrors = false) 4059public BoundValuePlaceholder? ElementPlaceholder { get; } 4072public BoundForEachStatement Update(ForEachEnumeratorInfo? enumeratorInfoOpt, BoundValuePlaceholder? elementPlaceholder, BoundExpression? elementConversion, BoundTypeExpression iterationVariableType, ImmutableArray<LocalSymbol> iterationVariables, BoundExpression? iterationErrorExpressionOpt, BoundExpression expression, BoundForEachDeconstructStep? deconstructionOpt, BoundAwaitableInfo? awaitOpt, BoundStatement body, LabelSymbol breakLabel, LabelSymbol continueLabel) 6432public BoundCollectionExpression(SyntaxNode syntax, CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundValuePlaceholder? collectionBuilderInvocationPlaceholder, BoundExpression? collectionBuilderInvocationConversion, bool wasTargetTyped, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type, bool hasErrors = false) 6455public BoundValuePlaceholder? CollectionBuilderInvocationPlaceholder { get; } 6463public BoundCollectionExpression Update(CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundValuePlaceholder? collectionBuilderInvocationPlaceholder, BoundExpression? collectionBuilderInvocationConversion, bool wasTargetTyped, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type) 6505public BoundCollectionExpressionSpreadElement(SyntaxNode syntax, BoundExpression expression, BoundCollectionExpressionSpreadExpressionPlaceholder? expressionPlaceholder, BoundExpression? conversion, ForEachEnumeratorInfo? enumeratorInfoOpt, BoundExpression? lengthOrCount, BoundValuePlaceholder? elementPlaceholder, BoundStatement? iteratorBody, bool hasErrors = false) 6525public BoundValuePlaceholder? ElementPlaceholder { get; } 6531public BoundCollectionExpressionSpreadElement Update(BoundExpression expression, BoundCollectionExpressionSpreadExpressionPlaceholder? expressionPlaceholder, BoundExpression? conversion, ForEachEnumeratorInfo? enumeratorInfoOpt, BoundExpression? lengthOrCount, BoundValuePlaceholder? elementPlaceholder, BoundStatement? iteratorBody) 8876return VisitValuePlaceholder((BoundValuePlaceholder)node, arg); 9343public virtual R VisitValuePlaceholder(BoundValuePlaceholder node, A arg) => this.DefaultVisit(node, arg); 9579public virtual BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => this.DefaultVisit(node); 9831public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => null; 10860public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) 10989BoundValuePlaceholder? operandPlaceholder = node.OperandPlaceholder; 10991BoundValuePlaceholder? resultPlaceholder = node.ResultPlaceholder; 11101BoundValuePlaceholder? leftPlaceholder = node.LeftPlaceholder; 11103BoundValuePlaceholder? finalPlaceholder = node.FinalPlaceholder; 11126BoundValuePlaceholder? leftPlaceholder = node.LeftPlaceholder; 11298BoundValuePlaceholder? operandPlaceholder = node.OperandPlaceholder; 11336BoundValuePlaceholder? elementPointerPlaceholder = node.ElementPointerPlaceholder; 11493BoundValuePlaceholder? elementPlaceholder = node.ElementPlaceholder; 11930BoundValuePlaceholder? collectionBuilderInvocationPlaceholder = node.CollectionBuilderInvocationPlaceholder; 11948BoundValuePlaceholder? elementPlaceholder = node.ElementPlaceholder; 12433public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) 12440BoundValuePlaceholder updatedNode = node.Update(infoAndType.Type); 12714BoundValuePlaceholder? operandPlaceholder = node.OperandPlaceholder; 12716BoundValuePlaceholder? resultPlaceholder = node.ResultPlaceholder; 12949BoundValuePlaceholder? leftPlaceholder = node.LeftPlaceholder; 12951BoundValuePlaceholder? finalPlaceholder = node.FinalPlaceholder; 13007BoundValuePlaceholder? leftPlaceholder = node.LeftPlaceholder; 13413BoundValuePlaceholder? operandPlaceholder = node.OperandPlaceholder; 13514BoundValuePlaceholder? elementPointerPlaceholder = node.ElementPointerPlaceholder; 13612BoundValuePlaceholder? elementPlaceholder = node.ElementPlaceholder; 14225BoundValuePlaceholder? collectionBuilderInvocationPlaceholder = node.CollectionBuilderInvocationPlaceholder; 15174public override TreeDumperNode VisitValuePlaceholder(BoundValuePlaceholder node, object? arg) => new TreeDumperNode("valuePlaceholder", null, new TreeDumperNode[]
Lowering\LocalRewriter\LocalRewriter.cs (2)
465public override BoundNode VisitValuePlaceholder(BoundValuePlaceholder node) 1190public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
Lowering\LocalRewriter\LocalRewriter_AsOperator.cs (1)
37BoundValuePlaceholder? operandPlaceholder,
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (2)
509var invocationPlaceholder = node.CollectionBuilderInvocationPlaceholder; 1330var elementPlaceholder = node.ElementPlaceholder;
Lowering\LocalRewriter\LocalRewriter_DeconstructionAssignmentOperator.cs (2)
222ImmutableArray<(BoundValuePlaceholder?, BoundExpression?)> deconstructConversionInfo = conversion.DeconstructConversionInfo; 370private BoundExpression EvaluateConversionToTemp(BoundExpression expression, BoundValuePlaceholder placeholder, BoundExpression conversion,
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (4)
139BoundValuePlaceholder? elementPlaceholder, 587BoundValuePlaceholder? elementPlaceholder, 883BoundValuePlaceholder? elementPlaceholder, 1032BoundValuePlaceholder? elementPlaceholder,
Lowering\LocalRewriter\LocalRewriter_NullCoalescingAssignmentOperator.cs (1)
45var leftPlaceholder = new BoundValuePlaceholder(lhsRead.Syntax, lhsRead.Type);
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (2)
26BoundValuePlaceholder? leftPlaceholder, 235private BoundExpression GetConvertedLeftForNullCoalescingOperator(BoundExpression rewrittenLeft, BoundValuePlaceholder? leftPlaceholder, BoundExpression? leftConversion, TypeSymbol rewrittenResultType)
Lowering\LocalRewriter\LocalRewriter_StringInterpolation.cs (1)
196var placeholder = new BoundValuePlaceholder(result.Syntax, result.Type);
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (2)
728private BoundExpression ApplyConversionIfNotIdentity(BoundExpression? conversion, BoundValuePlaceholder? placeholder, BoundExpression replacement) 755private BoundExpression ApplyConversion(BoundExpression conversion, BoundValuePlaceholder placeholder, BoundExpression replacement)