5 instantiations of BoundIndexerAccess
Microsoft.CodeAnalysis.CSharp (5)
Binder\Binder_Expressions.cs (1)
8502propertyAccess = new BoundIndexerAccess(
BoundTree\Constructors.cs (1)
223return new BoundIndexerAccess(
Generated\BoundNodes.xml.Generated.cs (1)
7175var result = new BoundIndexerAccess(this.Syntax, receiverOpt, indexer, arguments, argumentNamesOpt, argumentRefKindsOpt, expanded, argsToParamsOpt, defaultArguments, originalIndexersOpt, type, this.HasErrors);
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (1)
385return new BoundIndexerAccess(
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (1)
124new BoundIndexerAccess(syntax, rewrittenReceiver, indexer, arguments, argumentNamesOpt, argumentRefKindsOpt, expanded, argsToParamsOpt, defaultArguments, type);
83 references to BoundIndexerAccess
Microsoft.CodeAnalysis.CSharp (83)
Binder\Binder.ValueChecks.cs (16)
316private BoundIndexerAccess BindIndexerDefaultArguments(BoundIndexerAccess indexerAccess, BindValueKind valueKind, BindingDiagnosticBag diagnostics) 389if (expr is BoundIndexerAccess indexerAccess) 409expr = BindIndexerDefaultArguments((BoundIndexerAccess)expr, valueKind, diagnostics); 3053var indexerAccess = (BoundIndexerAccess)expr; 3074case BoundIndexerAccess indexerAccess: 3281var indexerAccess = (BoundIndexerAccess)expr; 3311case BoundIndexerAccess indexerAccess: 3610var indexerAccess = (BoundIndexerAccess)expr; 3631case BoundIndexerAccess indexerAccess: 4044var indexerAccess = (BoundIndexerAccess)expr; 4069case BoundIndexerAccess indexerAccess:
Binder\Binder_Expressions.cs (5)
5038var indexer = BindIndexerDefaultArguments((BoundIndexerAccess)boundMember, valueKind, diagnostics); 8323return BoundIndexerAccess.ErrorAccess( 8467propertyAccess = BoundIndexerAccess.ErrorAccess( 8563Debug.Assert(indexerOrSliceAccess is BoundIndexerAccess or BoundCall);
Binder\Binder_Patterns.cs (2)
240Debug.Assert(indexerAccess is BoundIndexerAccess or BoundImplicitIndexerAccess or BoundArrayAccess or BoundBadExpression or BoundDynamicIndexerAccess); 389Debug.Assert(indexerAccess is BoundIndexerAccess or BoundImplicitIndexerAccess or BoundArrayAccess or BoundBadExpression or BoundDynamicIndexerAccess);
Binder\Binder_Statements.cs (5)
1652var indexerAccess = (BoundIndexerAccess)expr; 1663case BoundIndexerAccess indexerAccess: 1714BoundIndexerAccess indexerAccess => indexerAccess.Indexer, 1718BoundImplicitIndexerAccess { IndexerOrSliceAccess: BoundIndexerAccess indexerAccess } => indexerAccess.Indexer,
Binder\RefSafetyAnalysis.cs (1)
658public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
BoundTree\BoundDagEvaluation.cs (2)
131Debug.Assert(IndexerAccess is BoundIndexerAccess or BoundImplicitIndexerAccess or BoundArrayAccess); 147Debug.Assert(IndexerAccess is BoundIndexerAccess or BoundImplicitIndexerAccess or BoundArrayAccess);
BoundTree\BoundExpressionExtensions.cs (2)
40return ((BoundIndexerAccess)node).Indexer.RefKind; 203var originalIndexers = ((BoundIndexerAccess)node).OriginalIndexersOpt;
BoundTree\BoundImplicitIndexerAccess.cs (1)
21Debug.Assert(IndexerOrSliceAccess is BoundIndexerAccess or BoundCall or BoundArrayAccess);
BoundTree\BoundListPattern.cs (1)
14Debug.Assert(IndexerAccess is null or BoundIndexerAccess or BoundImplicitIndexerAccess or BoundArrayAccess or BoundBadExpression or BoundDynamicIndexerAccess);
BoundTree\BoundSlicePattern.cs (1)
13Debug.Assert(IndexerAccess is null or BoundIndexerAccess or BoundImplicitIndexerAccess or BoundArrayAccess or BoundBadExpression or BoundDynamicIndexerAccess);
BoundTree\Constructors.cs (2)
214public static BoundIndexerAccess ErrorAccess( 252public BoundIndexerAccess Update(BoundExpression? receiverOpt,
Compilation\CSharpSemanticModel.cs (4)
3474BoundIndexerAccess indexerAccess = (BoundIndexerAccess)boundNode; 4391var indexer = (BoundIndexerAccess)boundNodeForSyntacticParent;
FlowAnalysis\AbstractFlowPass.cs (1)
1393public override BoundNode VisitIndexerAccess(BoundIndexerAccess node)
FlowAnalysis\NullableWalker.cs (3)
9127BoundIndexerAccess indexerAccess => indexerAccess.Indexer, 9151BoundIndexerAccess indexer => indexer.Indexer.GetFlowAnalysisAnnotations(), 9816public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
FlowAnalysis\NullableWalker_Patterns.cs (1)
810BoundIndexerAccess indexerAccess => AsMemberOfType(inputType, indexerAccess.Indexer).GetTypeOrReturnType(),
Generated\BoundNodes.xml.Generated.cs (10)
7171public BoundIndexerAccess Update(BoundExpression? receiverOpt, PropertySymbol indexer, ImmutableArray<BoundExpression> arguments, ImmutableArray<string> argumentNamesOpt, ImmutableArray<RefKind> argumentRefKindsOpt, bool expanded, ImmutableArray<int> argsToParamsOpt, BitVector defaultArguments, ImmutableArray<PropertySymbol> originalIndexersOpt, TypeSymbol type) 7175var result = new BoundIndexerAccess(this.Syntax, receiverOpt, indexer, arguments, argumentNamesOpt, argumentRefKindsOpt, expanded, argsToParamsOpt, defaultArguments, originalIndexersOpt, type, this.HasErrors); 8889return VisitIndexerAccess((BoundIndexerAccess)node, arg); 9157public virtual R VisitIndexerAccess(BoundIndexerAccess node, A arg) => this.DefaultVisit(node, arg); 9385public virtual BoundNode? VisitIndexerAccess(BoundIndexerAccess node) => this.DefaultVisit(node); 10238public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node) 11524public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node) 13964public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node) 13970BoundIndexerAccess updatedNode; 16138public override TreeDumperNode VisitIndexerAccess(BoundIndexerAccess node, object? arg) => new TreeDumperNode("indexerAccess", null, new TreeDumperNode[]
Lowering\DiagnosticsPass_ExpressionTrees.cs (1)
483public override BoundNode VisitIndexerAccess(BoundIndexerAccess node)
Lowering\LocalRewriter\LocalRewriter.cs (1)
966return ((BoundIndexerAccess)expr).Indexer.RefKind != RefKind.None;
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (1)
312public override BoundNode VisitIndexerAccess(BoundIndexerAccess node)
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (3)
34loweredLeft = VisitIndexerAccess((BoundIndexerAccess)left, isLeftOfAssignment: true); 203BoundIndexerAccess indexerAccess = (BoundIndexerAccess)rewrittenLeft;
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (8)
243private BoundIndexerAccess TransformIndexerAccess(BoundIndexerAccess indexerAccess, bool isRegularCompoundAssignment, ArrayBuilder<BoundExpression> stores, ArrayBuilder<LocalSymbol> temps) 314private BoundIndexerAccess TransformIndexerAccessContinued( 315BoundIndexerAccess indexerAccess, 425if (access is BoundIndexerAccess indexerAccess) 603var indexerAccess = (BoundIndexerAccess)originalLHS; 606return TransformIndexerAccess((BoundIndexerAccess)originalLHS, isRegularCompoundAssignment, stores, temps);
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (5)
71public override BoundNode VisitIndexerAccess(BoundIndexerAccess node) 79private BoundExpression VisitIndexerAccess(BoundIndexerAccess node, bool isLeftOfAssignment) 114BoundIndexerAccess? oldNodeOpt, 250Debug.Assert(node.IndexerOrSliceAccess is BoundIndexerAccess or BoundArrayAccess); 334if (node.IndexerOrSliceAccess is BoundIndexerAccess indexerAccess)
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (2)
856var indexerAccess = (BoundIndexerAccess)transformedExpression;
Operations\CSharpOperationFactory.cs (3)
50return CreateBoundIndexerAccessOperation((BoundIndexerAccess)boundNode); 602case BoundIndexerAccess boundIndexerAccess: 621private IOperation CreateBoundIndexerAccessOperation(BoundIndexerAccess boundIndexerAccess)
Operations\CSharpOperationFactory_Methods.cs (2)
213var boundIndexer = (BoundIndexerAccess)containingExpression;