17 references to GetRefKind
Microsoft.CodeAnalysis.CSharp (17)
Binder\Binder.ValueChecks.cs (1)
4662
var lhsRefKind = assignment.Left.
GetRefKind
();
Binder\Binder_Statements.cs (1)
1454
var lhsRefKind = boundLeft.
GetRefKind
();
Binder\RefSafetyAnalysis.cs (1)
620
valEscapeScope = receiver.
GetRefKind
().IsWritableReference() ? GetRefEscape(receiver, _localScopeDepth) : GetValEscape(receiver, _localScopeDepth);
BoundTree\BoundExpressionExtensions.cs (1)
43
return ((BoundImplicitIndexerAccess)node).IndexerOrSliceAccess.
GetRefKind
();
CodeGen\EmitExpression.cs (1)
2776
LocalDefinition temp = EmitAddress(assignmentOperator.Right, lhs.
GetRefKind
() == RefKind.RefReadOnly ? AddressKind.ReadOnlyStrict : AddressKind.Writeable);
CodeGen\Optimizer.cs (1)
1030
(lhs.Kind is BoundKind.Local or BoundKind.Parameter or BoundKind.FieldAccess && lhs.
GetRefKind
() != RefKind.None),
FlowAnalysis\AbstractFlowPass.cs (1)
1986
: node.Left.
GetRefKind
();
FlowAnalysis\NullableWalker.cs (1)
9203
return expr.
GetRefKind
() == RefKind.None;
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (1)
520
&& loweredInput.
GetRefKind
() == RefKind.None &&
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (1)
225
Debug.Assert(!isRef || rewrittenLeft.
GetRefKind
() != RefKind.None);
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
461
refKind = rewrittenReceiver.
GetRefKind
();
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (3)
418
Debug.Assert(implicitIndexerAccess.IndexerOrSliceAccess.
GetRefKind
() == RefKind.None);
604
if (indexerAccess.
GetRefKind
() == RefKind.None)
617
if (implicitIndexerAccess.
GetRefKind
() == RefKind.None)
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (2)
220
Debug.Assert(!isLeftOfAssignment || node.IndexerOrSliceAccess.
GetRefKind
() == RefKind.Ref);
336
if (isLeftOfAssignment && indexerAccess.
GetRefKind
() == RefKind.None)
Lowering\SyntheticBoundNodeFactory.cs (1)
1539
Debug.Assert(argument.
GetRefKind
() != RefKind.In);