1 write to Indexer
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
7448
this.
Indexer
= indexer;
58 references to Indexer
Microsoft.CodeAnalysis.CSharp (58)
Binder\Binder.ValueChecks.cs (17)
85
Create(expr.
Indexer
, expr.AccessorKind);
180
Parameters = indexerAccess.
Indexer
.Parameters,
613
if (indexerAccess.
Indexer
.RefKind != RefKind.None)
636
var useSetAccessor = coreValueKind == BindValueKind.Assignable && indexerAccess.
Indexer
.RefKind != RefKind.Ref;
638
? indexerAccess.
Indexer
.GetOwnOrInheritedSetMethod()
639
: indexerAccess.
Indexer
.GetOwnOrInheritedGetMethod();
666
Debug.Assert(parameters.Length == indexerAccess.
Indexer
.Parameters.Length);
693
Debug.Assert(!indexerAccess.
Indexer
.IsExtensionBlockMember());
706
indexerAccess.
Indexer
,
3798
var indexerSymbol = indexerAccess.
Indexer
;
3813
var indexerSymbol = indexerAccess.
Indexer
;
4073
var indexerSymbol = indexerAccess.
Indexer
;
4097
var indexerSymbol = indexerAccess.
Indexer
;
4436
var indexerSymbol = indexerAccess.
Indexer
;
4451
var indexerSymbol = indexerAccess.
Indexer
;
5116
var indexerSymbol = indexerAccess.
Indexer
;
5135
var indexerSymbol = indexerAccess.
Indexer
;
Binder\Binder_Expressions.cs (1)
6023
hasErrors |= isRhsNestedInitializer && !CheckNestedObjectInitializerPropertySymbol(indexer.
Indexer
, leftSyntax, diagnostics, hasErrors, ref resultKind);
Binder\Binder_Statements.cs (5)
1619
case BoundIndexerAccess {
Indexer
.SetMethod: { } indexerSet } indexer when indexerSet.IsExtensionBlockMember():
1688
propertySymbol = indexerAccess.
Indexer
;
1698
propertySymbol = indexerAccess.
Indexer
;
1748
BoundIndexerAccess indexerAccess => indexerAccess.
Indexer
,
1752
BoundImplicitIndexerAccess { IndexerOrSliceAccess: BoundIndexerAccess indexerAccess } => indexerAccess.
Indexer
,
Binder\RefSafetyAnalysis.cs (2)
1044
VisitArgumentsAndGetArgumentPlaceholders(methodInvocationInfo.Receiver, methodInvocationInfo.ArgsOpt, node.
Indexer
.IsExtensionBlockMember());
1048
var indexer = node.
Indexer
;
BoundTree\BoundExpression.cs (2)
342
get { return this.
Indexer
; }
358
Indexer
,
BoundTree\BoundExpressionExtensions.cs (1)
40
return ((BoundIndexerAccess)node).
Indexer
.RefKind;
Compilation\CSharpSemanticModel.cs (4)
3485
Debug.Assert((object)indexerAccess.
Indexer
!= null);
3490
symbols = originalIndexersOpt.IsDefault ? OneOrMany.Create<Symbol>(indexerAccess.
Indexer
) : StaticCast<Symbol>.From(OneOrMany.Create(originalIndexersOpt));
4423
if (elementAccess != null && elementAccess.Expression == boundNode.Syntax && (object)indexer.
Indexer
!= null)
4428
symbols = OneOrMany.Create<Symbol>(indexer.
Indexer
);
FlowAnalysis\AbstractFlowPass.cs (1)
1482
var method = GetReadMethod(node.
Indexer
);
FlowAnalysis\NullableWalker.cs (4)
10683
BoundIndexerAccess indexerAccess => indexerAccess.
Indexer
,
10707
BoundIndexerAccess indexer => indexer.
Indexer
.GetFlowAnalysisAnnotations(),
11536
var indexer = node.
Indexer
;
11547
SetUpdatedSymbol(node, node.
Indexer
, indexer);
FlowAnalysis\NullableWalker_Patterns.cs (1)
852
BoundIndexerAccess indexerAccess => AsMemberOfType(inputType, indexerAccess.
Indexer
).GetTypeOrReturnType(),
Generated\BoundNodes.xml.Generated.cs (4)
7477
if (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))
12151
PropertySymbol indexer = this.VisitPropertySymbol(node.
Indexer
);
14694
PropertySymbol indexer = GetUpdatedSymbol(node, node.
Indexer
);
16951
new TreeDumperNode("indexer", node.
Indexer
, null),
Lowering\DiagnosticsPass_ExpressionTrees.cs (1)
565
var indexer = node.
Indexer
;
Lowering\LocalRewriter\LocalRewriter.cs (1)
1098
return ((BoundIndexerAccess)expr).
Indexer
.RefKind != RefKind.None;
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (1)
316
MethodMayMutateReceiver(node.ReceiverOpt, node.
Indexer
.GetMethod);
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (1)
215
PropertySymbol indexer = indexerAccess.
Indexer
;
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (3)
249
case BoundIndexerAccess {
Indexer
: { } indexer }:
424
indexerAccess.
Indexer
,
445
PropertySymbol indexer = indexerAccess.
Indexer
;
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (6)
70
Debug.Assert(node.
Indexer
.IsIndexer || node.
Indexer
.IsIndexedProperty);
71
Debug.Assert((object?)node.
Indexer
.GetOwnOrInheritedGetMethod() != null);
78
PropertySymbol indexer = node.
Indexer
;
620
indexerAccess.
Indexer
,
629
receiver, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, indexerAccess.
Indexer
, rewrittenArguments,
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (1)
1033
return MakePropertyGetAccess(transformedExpression.Syntax, indexerAccess.ReceiverOpt, indexerAccess.
Indexer
, indexerAccess.Arguments, indexerAccess.ArgumentRefKindsOpt);
Operations\CSharpOperationFactory.cs (1)
626
PropertySymbol property = boundIndexerAccess.
Indexer
;
Operations\CSharpOperationFactory_Methods.cs (1)
212
return DeriveArguments(boundIndexer.
Indexer
,