12 types derived from BoundValuePlaceholderBase
Microsoft.CodeAnalysis.CSharp (12)
Generated\BoundNodes.xml.Generated.cs (12)
443internal abstract partial class BoundEarlyValuePlaceholderBase : BoundValuePlaceholderBase 457internal sealed partial class BoundValuePlaceholder : BoundValuePlaceholderBase 485internal sealed partial class BoundCapturedReceiverPlaceholder : BoundValuePlaceholderBase 515internal sealed partial class BoundDeconstructValuePlaceholder : BoundValuePlaceholderBase 556internal sealed partial class BoundTupleOperandPlaceholder : BoundValuePlaceholderBase 591internal sealed partial class BoundAwaitableValuePlaceholder : BoundValuePlaceholderBase 620internal sealed partial class BoundDisposableValuePlaceholder : BoundValuePlaceholderBase 655internal sealed partial class BoundObjectOrCollectionValuePlaceholder : BoundValuePlaceholderBase 693internal sealed partial class BoundImplicitIndexerValuePlaceholder : BoundValuePlaceholderBase 728internal sealed partial class BoundImplicitIndexerReceiverPlaceholder : BoundValuePlaceholderBase 7526internal sealed partial class BoundInterpolatedStringHandlerPlaceholder : BoundValuePlaceholderBase 7554internal sealed partial class BoundInterpolatedStringArgumentPlaceholder : BoundValuePlaceholderBase
39 references to BoundValuePlaceholderBase
Microsoft.CodeAnalysis.CSharp (39)
Binder\Binder.ValueChecks.cs (4)
760Debug.Assert(expr is not BoundValuePlaceholderBase, $"Placeholder kind {expr.Kind} should be explicitly handled"); 2078if (receiver is not BoundValuePlaceholderBase && method is not null && receiver.Type?.IsValueType == true) 3530return GetPlaceholderScope((BoundValuePlaceholderBase)expr); 3932if (GetPlaceholderScope((BoundValuePlaceholderBase)expr) > escapeTo)
Binder\Binder_Expressions.cs (1)
8774BoundValuePlaceholderBase receiverPlaceholder,
Binder\RefSafetyAnalysis.cs (16)
83private Dictionary<BoundValuePlaceholderBase, uint>? _placeholderScopes; 171private readonly ArrayBuilder<(BoundValuePlaceholderBase, uint)> _placeholders; 173public PlaceholderRegion(RefSafetyAnalysis analysis, ArrayBuilder<(BoundValuePlaceholderBase, uint)> placeholders) 205private void AddPlaceholderScope(BoundValuePlaceholderBase placeholder, uint valEscapeScope) 207_placeholderScopes ??= new Dictionary<BoundValuePlaceholderBase, uint>(); 212private void RemovePlaceholderScope(BoundValuePlaceholderBase placeholder) 221private uint GetPlaceholderScope(BoundValuePlaceholderBase placeholder) 237if (node is BoundValuePlaceholderBase placeholder 301var placeholders = ArrayBuilder<(BoundValuePlaceholderBase, uint)>.GetInstance(); 316var placeholders = ArrayBuilder<(BoundValuePlaceholderBase, uint)>.GetInstance(); 569var placeholders = ArrayBuilder<(BoundValuePlaceholderBase, uint)>.GetInstance(); 605ArrayBuilder<(BoundValuePlaceholderBase, uint)> placeholders, 706var placeholders = ArrayBuilder<(BoundValuePlaceholderBase, uint)>.GetInstance(); 713private void GetAwaitableInstancePlaceholders(ArrayBuilder<(BoundValuePlaceholderBase, uint)> placeholders, BoundAwaitableInfo awaitableInfo, uint valEscapeScope) 758var placeholders = ArrayBuilder<(BoundValuePlaceholderBase, uint)>.GetInstance(); 864var placeholders = ArrayBuilder<(BoundValuePlaceholderBase, uint)>.GetInstance();
FlowAnalysis\NullableWalker.cs (7)
210private PooledDictionary<BoundValuePlaceholderBase, (BoundExpression? Replacement, VisitResult Result)>? _resultForPlaceholdersOpt; 502private void AddPlaceholderReplacement(BoundValuePlaceholderBase placeholder, BoundExpression? expression, VisitResult result) 509_resultForPlaceholdersOpt ??= PooledDictionary<BoundValuePlaceholderBase, (BoundExpression? Replacement, VisitResult Result)>.GetInstance(); 513private void RemovePlaceholderReplacement(BoundValuePlaceholderBase placeholder) 521private static void AssertPlaceholderAllowedWithoutRegistration(BoundValuePlaceholderBase placeholder) 4960if (expression is BoundValuePlaceholderBase placeholder) 11161private void VisitPlaceholderWithReplacement(BoundValuePlaceholderBase node)
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (2)
63private readonly Dictionary<BoundValuePlaceholderBase, BoundExpression> _placeholderMap; 96_placeholderMap = new Dictionary<BoundValuePlaceholderBase, BoundExpression>();
Lowering\LocalRewriter\LocalRewriter.cs (7)
46private Dictionary<BoundValuePlaceholderBase, BoundExpression>? _placeholderReplacementMapDoNotUseDirectly; 431private BoundExpression PlaceholderReplacement(BoundValuePlaceholderBase placeholder) 440private static void AssertPlaceholderReplacement(BoundValuePlaceholderBase placeholder, BoundExpression value) 461private void AddPlaceholderReplacement(BoundValuePlaceholderBase placeholder, BoundExpression value) 467_placeholderReplacementMapDoNotUseDirectly = new Dictionary<BoundValuePlaceholderBase, BoundExpression>(); 477private void RemovePlaceholderReplacement(BoundValuePlaceholderBase placeholder) 990Debug.Assert(expr is not BoundValuePlaceholderBase, $"Placeholder kind {expr.Kind} must be handled explicitly");
Lowering\MethodToClassRewriter.cs (2)
54private readonly Dictionary<BoundValuePlaceholderBase, BoundExpression> _placeholderMap; 65this._placeholderMap = new Dictionary<BoundValuePlaceholderBase, BoundExpression>();