17 references to GetRefKind
Microsoft.CodeAnalysis.CSharp (17)
Binder\Binder.ValueChecks.cs (1)
5770var lhsRefKind = assignment.Left.GetRefKind();
Binder\Binder_Statements.cs (1)
1445var lhsRefKind = boundLeft.GetRefKind();
Binder\RefSafetyAnalysis.cs (1)
697valEscapeScope = receiver.GetRefKind().IsWritableReference() ? GetRefEscape(receiver, _localScopeDepth) : GetValEscape(receiver, _localScopeDepth);
BoundTree\BoundExpressionExtensions.cs (1)
43return ((BoundImplicitIndexerAccess)node).IndexerOrSliceAccess.GetRefKind();
CodeGen\EmitExpression.cs (1)
2994LocalDefinition 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)
222Debug.Assert(!isRef || rewrittenLeft.GetRefKind() != RefKind.None);
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
702refKind = rewrittenReceiver.GetRefKind();
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (4)
425Debug.Assert(implicitIndexerAccess.IndexerOrSliceAccess.GetRefKind() == RefKind.None); 612if (indexerAccess.GetRefKind() == RefKind.None) 625if (implicitIndexerAccess.GetRefKind() == RefKind.None) 678Debug.Assert(originalLHS.GetRefKind() == RefKind.Ref);
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (2)
448Debug.Assert(!isLeftOfAssignment || node.IndexerOrSliceAccess.GetRefKind() == RefKind.Ref); 570if (isLeftOfAssignment && indexerAccess.GetRefKind() == RefKind.None)
Lowering\SyntheticBoundNodeFactory.cs (1)
1663Debug.Assert(argument.GetRefKind() != RefKind.In);