1 write to Indexer
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
7421this.Indexer = indexer;
57 references to Indexer
Microsoft.CodeAnalysis.CSharp (57)
Binder\Binder.ValueChecks.cs (16)
87Create(expr.Indexer, expr.AccessorKind); 182Parameters = indexerAccess.Indexer.Parameters, 614if (indexerAccess.Indexer.RefKind != RefKind.None) 637var useSetAccessor = coreValueKind == BindValueKind.Assignable && indexerAccess.Indexer.RefKind != RefKind.Ref; 639? indexerAccess.Indexer.GetOwnOrInheritedSetMethod() 640: indexerAccess.Indexer.GetOwnOrInheritedGetMethod(); 667Debug.Assert(parameters.Length == indexerAccess.Indexer.Parameters.Length); 705indexerAccess.Indexer, 3795var indexerSymbol = indexerAccess.Indexer; 3811var indexerSymbol = indexerAccess.Indexer; 4065var indexerSymbol = indexerAccess.Indexer; 4090var indexerSymbol = indexerAccess.Indexer; 4426var indexerSymbol = indexerAccess.Indexer; 4442var indexerSymbol = indexerAccess.Indexer; 5113var indexerSymbol = indexerAccess.Indexer; 5133var indexerSymbol = indexerAccess.Indexer;
Binder\Binder_Expressions.cs (1)
5958hasErrors |= isRhsNestedInitializer && !CheckNestedObjectInitializerPropertySymbol(indexer.Indexer, leftSyntax, diagnostics, hasErrors, ref resultKind);
Binder\Binder_Statements.cs (5)
1614case BoundIndexerAccess { Indexer.SetMethod: { } indexerSet } indexer when indexerSet.GetIsNewExtensionMember(): 1683propertySymbol = indexerAccess.Indexer; 1693propertySymbol = indexerAccess.Indexer; 1743BoundIndexerAccess indexerAccess => indexerAccess.Indexer, 1747BoundImplicitIndexerAccess { IndexerOrSliceAccess: BoundIndexerAccess indexerAccess } => indexerAccess.Indexer,
Binder\RefSafetyAnalysis.cs (2)
998VisitArgumentsAndGetArgumentPlaceholders(methodInvocationInfo.Receiver, methodInvocationInfo.ArgsOpt, node.Indexer.GetIsNewExtensionMember()); 1002var indexer = node.Indexer;
BoundTree\BoundExpression.cs (2)
342get { return this.Indexer; } 358Indexer,
BoundTree\BoundExpressionExtensions.cs (1)
40return ((BoundIndexerAccess)node).Indexer.RefKind;
Compilation\CSharpSemanticModel.cs (4)
3494Debug.Assert((object)indexerAccess.Indexer != null); 3499symbols = originalIndexersOpt.IsDefault ? OneOrMany.Create<Symbol>(indexerAccess.Indexer) : StaticCast<Symbol>.From(OneOrMany.Create(originalIndexersOpt)); 4427if (elementAccess != null && elementAccess.Expression == boundNode.Syntax && (object)indexer.Indexer != null) 4432symbols = OneOrMany.Create<Symbol>(indexer.Indexer);
FlowAnalysis\AbstractFlowPass.cs (1)
1482var method = GetReadMethod(node.Indexer);
FlowAnalysis\NullableWalker.cs (4)
10545BoundIndexerAccess indexerAccess => indexerAccess.Indexer, 10569BoundIndexerAccess indexer => indexer.Indexer.GetFlowAnalysisAnnotations(), 11402var indexer = node.Indexer; 11413SetUpdatedSymbol(node, node.Indexer, indexer);
FlowAnalysis\NullableWalker_Patterns.cs (1)
852BoundIndexerAccess indexerAccess => AsMemberOfType(inputType, indexerAccess.Indexer).GetTypeOrReturnType(),
Generated\BoundNodes.xml.Generated.cs (4)
7450if (receiverOpt != this.ReceiverOpt || initialBindingReceiverIsSubjectToCloning != this.InitialBindingReceiverIsSubjectToCloning || !Symbols.SymbolEqualityComparer.ConsiderEverything.Equals(indexer, this.Indexer) || arguments != this.Arguments || argumentNamesOpt != this.ArgumentNamesOpt || argumentRefKindsOpt != this.ArgumentRefKindsOpt || expanded != this.Expanded || accessorKind != this.AccessorKind || argsToParamsOpt != this.ArgsToParamsOpt || defaultArguments != this.DefaultArguments || originalIndexersOpt != this.OriginalIndexersOpt || !TypeSymbol.Equals(type, this.Type, TypeCompareKind.ConsiderEverything)) 12121PropertySymbol indexer = this.VisitPropertySymbol(node.Indexer); 14660PropertySymbol indexer = GetUpdatedSymbol(node, node.Indexer); 16927new TreeDumperNode("indexer", node.Indexer, null),
Lowering\DiagnosticsPass_ExpressionTrees.cs (1)
565var indexer = node.Indexer;
Lowering\LocalRewriter\LocalRewriter.cs (1)
1098return ((BoundIndexerAccess)expr).Indexer.RefKind != RefKind.None;
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (1)
316MethodMayMutateReceiver(node.ReceiverOpt, node.Indexer.GetMethod);
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (1)
215PropertySymbol indexer = indexerAccess.Indexer;
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (3)
249case BoundIndexerAccess { Indexer: { } indexer }: 424indexerAccess.Indexer, 445PropertySymbol indexer = indexerAccess.Indexer;
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (6)
70Debug.Assert(node.Indexer.IsIndexer || node.Indexer.IsIndexedProperty); 71Debug.Assert((object?)node.Indexer.GetOwnOrInheritedGetMethod() != null); 78PropertySymbol indexer = node.Indexer; 620indexerAccess.Indexer, 629receiver, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, indexerAccess.Indexer, rewrittenArguments,
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (1)
1033return MakePropertyGetAccess(transformedExpression.Syntax, indexerAccess.ReceiverOpt, indexerAccess.Indexer, indexerAccess.Arguments, indexerAccess.ArgumentRefKindsOpt);
Operations\CSharpOperationFactory.cs (1)
626PropertySymbol property = boundIndexerAccess.Indexer;
Operations\CSharpOperationFactory_Methods.cs (1)
212return DeriveArguments(boundIndexer.Indexer,