17 references to GetRefKind
Microsoft.CodeAnalysis.CSharp (17)
Binder\Binder.ValueChecks.cs (1)
5770
var lhsRefKind = assignment.Left.
GetRefKind
();
Binder\Binder_Statements.cs (1)
1445
var lhsRefKind = boundLeft.
GetRefKind
();
Binder\RefSafetyAnalysis.cs (1)
697
valEscapeScope = receiver.
GetRefKind
().IsWritableReference() ? GetRefEscape(receiver, _localScopeDepth) : GetValEscape(receiver, _localScopeDepth);
BoundTree\BoundExpressionExtensions.cs (1)
43
return ((BoundImplicitIndexerAccess)node).IndexerOrSliceAccess.
GetRefKind
();
CodeGen\EmitExpression.cs (1)
2994
LocalDefinition temp = EmitAddress(assignmentOperator.Right, lhs.
GetRefKind
() is RefKind.RefReadOnly or RefKindExtensions.StrictIn or RefKind.RefReadOnlyParameter ? AddressKind.ReadOnlyStrict : AddressKind.Writeable);
CodeGen\Optimizer.cs (1)
1031
(lhs.Kind is BoundKind.Local or BoundKind.Parameter or BoundKind.FieldAccess && lhs.
GetRefKind
() != RefKind.None),
FlowAnalysis\AbstractFlowPass.cs (1)
2159
: node.Left.
GetRefKind
();
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (1)
520
&& loweredInput.
GetRefKind
() == RefKind.None &&
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (1)
222
Debug.Assert(!isRef || rewrittenLeft.
GetRefKind
() != RefKind.None);
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
702
refKind = rewrittenReceiver.
GetRefKind
();
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (4)
425
Debug.Assert(implicitIndexerAccess.IndexerOrSliceAccess.
GetRefKind
() == RefKind.None);
612
if (indexerAccess.
GetRefKind
() == RefKind.None)
625
if (implicitIndexerAccess.
GetRefKind
() == RefKind.None)
678
Debug.Assert(originalLHS.
GetRefKind
() == RefKind.Ref);
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (2)
448
Debug.Assert(!isLeftOfAssignment || node.IndexerOrSliceAccess.
GetRefKind
() == RefKind.Ref);
570
if (isLeftOfAssignment && indexerAccess.
GetRefKind
() == RefKind.None)
Lowering\SyntheticBoundNodeFactory.cs (1)
1663
Debug.Assert(argument.
GetRefKind
() != RefKind.In);