1 write to Expression
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
7518
this.
Expression
= expression;
39 references to Expression
Microsoft.CodeAnalysis.CSharp (39)
Binder\Binder.ValueChecks.cs (3)
923
getItemOrSliceHelper = getItemOrSliceHelper.AsMember(getItemOrSliceHelper.ContainingType.Construct(ImmutableArray.Create(elementAccess.
Expression
.Type.TryGetInlineArrayElementField().TypeWithAnnotations)));
5585
TypeWithAnnotations.Create(elementAccess.
Expression
.Type),
5598
arguments = ImmutableArray.Create(elementAccess.
Expression
);
Binder\Binder_Operators.cs (1)
2629
expr = elementAccess.
Expression
;
BoundTree\BoundInlineArrayAccess.cs (2)
62
Debug.Assert(((NamedTypeSymbol)Type).TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[0].Equals(
Expression
.Type?.TryGetInlineArrayElementField()?.TypeWithAnnotations ?? default, TypeCompareKind.ConsiderEverything));
70
Debug.Assert(Type.Equals(
Expression
.Type?.TryGetInlineArrayElementField()?.Type, TypeCompareKind.ConsiderEverything));
FlowAnalysis\AbstractFlowPass.cs (2)
2374
VisitRvalue(node.
Expression
);
2387
VisitLvalue(access.
Expression
);
FlowAnalysis\DefiniteAssignment.cs (11)
854
n = elementAccess.
Expression
;
1045
n = elementAccess.
Expression
;
1445
return IsAssigned(elementAccess.
Expression
, out unassignedSlot);
1606
NoteWrite(elementAccess.
Expression
, value: null, read: read, isRef: isRef);
1609
if (elementAccess.
Expression
.Type.HasInlineArrayAttribute(out int length) &&
1613
int slot = MakeMemberSlot(elementAccess.
Expression
, elementAccess.
Expression
.Type.TryGetInlineArrayElementField());
1623
AssignImpl(elementAccess.
Expression
, value: null, isRef, written, read);
1624
int slot = MakeSlot(elementAccess.
Expression
);
2651
CheckAssigned(((BoundInlineArrayAccess)expr).
Expression
, node);
2828
NoteWrite(node.
Expression
, value: null, read: false, isRef: false);
FlowAnalysis\NullableWalker.cs (1)
4963
var expressionType = VisitRvalueWithState(node.
Expression
).Type;
FlowAnalysis\ReadWriteWalker.cs (2)
160
NoteExpressionReadOrWritten(expr.
Expression
, _writtenInside);
230
NoteExpressionReadOrWritten(elementAccess.
Expression
, readOrWritten);
Generated\BoundNodes.xml.Generated.cs (5)
7539
if (expression != this.
Expression
|| argument != this.Argument || isValue != this.IsValue || getItemOrSliceHelper != this.GetItemOrSliceHelper || !TypeSymbol.Equals(type, this.Type, TypeCompareKind.ConsiderEverything))
10660
this.Visit(node.
Expression
);
12133
BoundExpression expression = (BoundExpression)this.Visit(node.
Expression
);
14685
BoundExpression expression = (BoundExpression)this.Visit(node.
Expression
);
16957
new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.
Expression
, null) }),
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (11)
203
Debug.Assert(node.
Expression
.Type is object);
206
var rewrittenReceiver = VisitExpression(node.
Expression
);
219
_ = node.
Expression
.Type.HasInlineArrayAttribute(out int length);
323
Debug.Assert(node.
Expression
.Type is object);
335
return createSpan.Construct(node.
Expression
.Type, node.
Expression
.Type.TryGetInlineArrayElementField()!.Type);
340
Debug.Assert(node.
Expression
.Type is object);
362
elementRef = elementRef.Construct(node.
Expression
.Type, node.
Expression
.Type.TryGetInlineArrayElementField()!.Type);
381
elementRef = elementRef.Construct(node.
Expression
.Type, node.
Expression
.Type.TryGetInlineArrayElementField()!.Type);
Operations\CSharpOperationFactory.cs (1)
1659
IOperation arrayReference = Create(boundInlineArrayAccess.
Expression
);