7 instantiations of BoundPropertyAccess
Microsoft.CodeAnalysis.CSharp (7)
Binder\Binder_Attributes.cs (1)
563lvalue = new BoundPropertyAccess(nameSyntax, null, propertySymbol, resultKind, namedArgumentType);
Binder\Binder_Expressions.cs (1)
7605return new BoundPropertyAccess(node, receiver, propertySymbol, lookupResult, propertySymbol.Type, hasErrors: (hasErrors || hasError));
Binder\Binder_Patterns.cs (1)
366lengthAccess = new BoundPropertyAccess(node, receiverPlaceholder, lengthProperty, LookupResultKind.Viable, lengthProperty.Type) { WasCompilerGenerated = true };
FlowAnalysis\NullableWalker.cs (1)
9044left = new BoundPropertyAccess(fieldAccess.Syntax, fieldAccess.ReceiverOpt, autoProperty, LookupResultKind.Viable, autoProperty.Type, fieldAccess.HasErrors);
Generated\BoundNodes.xml.Generated.cs (1)
7092var result = new BoundPropertyAccess(this.Syntax, receiverOpt, propertySymbol, resultKind, type, this.HasErrors);
Lowering\LocalRewriter\LocalRewriter_PropertyAccess.cs (2)
59new BoundPropertyAccess(syntax, rewrittenReceiverOpt, propertySymbol, resultKind, type); 85new BoundPropertyAccess(syntax, rewrittenReceiver, property, LookupResultKind.Viable, property.Type);
79 references to BoundPropertyAccess
Microsoft.CodeAnalysis.CSharp (79)
Binder\Binder.ValueChecks.cs (8)
3114var propertyAccess = (BoundPropertyAccess)expr; 3387var propertyAccess = (BoundPropertyAccess)expr; 3664var propertyAccess = (BoundPropertyAccess)expr; 4112var propertyAccess = (BoundPropertyAccess)expr;
Binder\Binder_Attributes.cs (2)
915var pa = (BoundPropertyAccess)assignment.Left;
Binder\Binder_Await.cs (1)
385isCompletedProperty = ((BoundPropertyAccess)qualified).PropertySymbol;
Binder\Binder_Expressions.cs (3)
5033hasErrors |= isRhsNestedInitializer && !CheckNestedObjectInitializerPropertySymbol(((BoundPropertyAccess)boundMember).PropertySymbol, leftSyntax, diagnostics, hasErrors, ref resultKind); 5254BoundPropertyAccess propertyAccess => propertyAccess.PropertySymbol, 8562Debug.Assert(lengthOrCountAccess is BoundPropertyAccess);
Binder\Binder_Invocation.cs (1)
110symbol = ((BoundPropertyAccess)boundExpression).PropertySymbol;
Binder\Binder_Statements.cs (3)
1645var propertyAccess = (BoundPropertyAccess)expr; 1762internal static bool AccessingAutoPropertyFromConstructor(BoundPropertyAccess propertyAccess, Symbol fromMember)
BoundTree\BoundExpressionExtensions.cs (1)
37return ((BoundPropertyAccess)node).PropertySymbol.RefKind;
BoundTree\BoundImplicitIndexerAccess.cs (1)
20Debug.Assert(LengthOrCountAccess is BoundPropertyAccess or BoundArrayLength or BoundLocal or BoundBadExpression);
BoundTree\BoundListPattern.cs (1)
13Debug.Assert(LengthAccess is null or BoundPropertyAccess or BoundBadExpression);
BoundTree\BoundTreeVisitors.cs (1)
124return VisitPropertyAccess(node as BoundPropertyAccess, arg);
FlowAnalysis\AbstractFlowPass.cs (14)
570var access = (BoundPropertyAccess)node; 1956return !Binder.AccessingAutoPropertyFromConstructor((BoundPropertyAccess)expr, _symbol); 1964var left = (BoundPropertyAccess)node.Left; 2019var left = (BoundPropertyAccess)node.Left; 2038var left = (BoundPropertyAccess)node.Left; 2088public override BoundNode VisitPropertyAccess(BoundPropertyAccess node) 2611var left = (BoundPropertyAccess)node.Operand; 3515(BoundPropertyAccess)node.LeftOperand is var left && 3571BoundPropertyAccess propertyAccessOpt)
FlowAnalysis\DefiniteAssignment.cs (6)
1058var propAccess = (BoundPropertyAccess)expr; 1368var propertyAccess = (BoundPropertyAccess)node; 2553public override BoundNode VisitPropertyAccess(BoundPropertyAccess node) 2626BoundPropertyAccess propertyAccessOpt)
FlowAnalysis\NullableWalker.cs (5)
1929var propAccess = (BoundPropertyAccess)expr; 9126BoundPropertyAccess propAccess => propAccess.PropertySymbol, 9150BoundPropertyAccess property => property.PropertySymbol.GetFlowAnalysisAnnotations(), 9795public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
FlowAnalysis\ReadWriteWalker.cs (1)
276underlying = ((BoundPropertyAccess)underlying).ReceiverOpt;
Generated\BoundNodes.xml.Generated.cs (10)
7088public BoundPropertyAccess Update(BoundExpression? receiverOpt, PropertySymbol propertySymbol, LookupResultKind resultKind, TypeSymbol type) 7092var result = new BoundPropertyAccess(this.Syntax, receiverOpt, propertySymbol, resultKind, type, this.HasErrors); 8885return VisitPropertyAccess((BoundPropertyAccess)node, arg); 9155public virtual R VisitPropertyAccess(BoundPropertyAccess node, A arg) => this.DefaultVisit(node, arg); 9383public virtual BoundNode? VisitPropertyAccess(BoundPropertyAccess node) => this.DefaultVisit(node); 10228public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node) 11512public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node) 13928public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node) 13932BoundPropertyAccess updatedNode; 16117public override TreeDumperNode VisitPropertyAccess(BoundPropertyAccess node, object? arg) => new TreeDumperNode("propertyAccess", null, new TreeDumperNode[]
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (2)
235return VisitPropertyAccess((BoundPropertyAccess)node); 1010private BoundExpression VisitPropertyAccess(BoundPropertyAccess node)
Lowering\DiagnosticsPass_ExpressionTrees.cs (1)
503public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
Lowering\LocalRewriter\LocalRewriter.cs (1)
963return ((BoundPropertyAccess)expr).PropertySymbol.RefKind != RefKind.None;
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (1)
179public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (3)
30loweredLeft = VisitPropertyAccess((BoundPropertyAccess)left, isLeftOfAssignment: true); 183BoundPropertyAccess propertyAccess = (BoundPropertyAccess)rewrittenLeft;
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (2)
588var propertyAccess = (BoundPropertyAccess)originalLHS;
Lowering\LocalRewriter\LocalRewriter_PropertyAccess.cs (5)
15public override BoundNode VisitPropertyAccess(BoundPropertyAccess node) 20private BoundExpression VisitPropertyAccess(BoundPropertyAccess node, bool isLeftOfAssignment) 33BoundPropertyAccess? oldNodeOpt = null) 68private BoundExpression MakePropertyGetAccess(SyntaxNode syntax, BoundExpression? rewrittenReceiver, PropertySymbol property, BoundPropertyAccess? oldNodeOpt) 79BoundPropertyAccess? oldNodeOpt = null)
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (2)
848var propertyAccess = (BoundPropertyAccess)transformedExpression;
Lowering\MethodToClassRewriter.cs (1)
222public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
Operations\CSharpOperationFactory.cs (3)
48return CreateBoundPropertyAccessOperation((BoundPropertyAccess)boundNode); 596case BoundPropertyAccess boundPropertyAccess: 609private IPropertyReferenceOperation CreateBoundPropertyAccessOperation(BoundPropertyAccess boundPropertyAccess)