25 references to RefKindExtensions
Microsoft.CodeAnalysis.CSharp (25)
CodeGen\CodeGenerator_HasHome.cs (3)
125
else if (localRefKind ==
RefKindExtensions
.StrictIn)
154
else if (dupRefKind ==
RefKindExtensions
.StrictIn)
181
if (!IsAnyReadOnly(addressKind) && right.RefKind is (RefKind.RefReadOnly or
RefKindExtensions
.StrictIn))
CodeGen\EmitExpression.cs (6)
735
Debug.Assert(refKind is RefKind.In or RefKind.Ref or RefKind.Out or
RefKindExtensions
.StrictIn);
759
Debug.Assert(refKind is RefKind.Ref or RefKind.Out or
RefKindExtensions
.StrictIn);
762
return refKind ==
RefKindExtensions
.StrictIn ? AddressKind.ReadOnlyStrict : AddressKind.Writeable;
1006
RefKind.In => argRefKind ==
RefKindExtensions
.StrictIn,
1007
RefKind.RefReadOnlyParameter => argRefKind is RefKind.In or
RefKindExtensions
.StrictIn,
3170
return refKind is RefKind.RefReadOnly or
RefKindExtensions
.StrictIn or RefKind.RefReadOnlyParameter ? AddressKind.ReadOnlyStrict : AddressKind.Writeable;
CodeGen\Optimizer.cs (1)
985
if (localSymbol.RefKind is RefKind.RefReadOnly or
RefKindExtensions
.StrictIn &&
FlowAnalysis\AbstractFlowPass.cs (1)
1555
case
RefKindExtensions
.StrictIn:
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (1)
252
return new BoundRefAccess(syntax,
RefKindExtensions
.StrictIn, rewrittenRight, rewrittenRight.Type);
Lowering\LocalRewriter\LocalRewriter_Call.cs (5)
1030
return
RefKindExtensions
.StrictIn;
1058
case
RefKindExtensions
.StrictIn:
1059
Debug.Assert(refKind !=
RefKindExtensions
.StrictIn);
1380
return initialArgRefKind == RefKind.None ? RefKind.In :
RefKindExtensions
.StrictIn;
1586
? (argRefKind == RefKind.None ? RefKind.In :
RefKindExtensions
.StrictIn)
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (1)
728
var call = _factory.New(constructor, arguments: [temp], argumentRefKinds: [asReadOnlySpan ?
RefKindExtensions
.StrictIn : RefKind.Ref]);
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (1)
759
collectionTempRefKind = enumeratorInfo.InlineArraySpanType == WellKnownType.System_Span_T ? RefKind.Ref :
RefKindExtensions
.StrictIn;
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (1)
332
possiblyRefCapturedReceiver = _factory.StoreToTemp(possiblyRefCapturedReceiver, out var refCapture, createSpan.Parameters[0].RefKind == RefKind.In ?
RefKindExtensions
.StrictIn : RefKind.Ref);
Lowering\LocalRewriter\LocalRewriter_StringConcat.cs (1)
535
argumentRefKindsOpt: [readOnlySpanCtorRefParamChar.Parameters[0].RefKind == RefKind.Ref ? RefKind.Ref :
RefKindExtensions
.StrictIn],
Lowering\StateMachineRewriter\RefInitializationHoister.cs (2)
241
Debug.Assert(refKind is
RefKindExtensions
.StrictIn or RefKind.Ref or RefKind.Out);
262
Debug.Assert(refKind is
RefKindExtensions
.StrictIn or RefKind.Ref or RefKind.In);
Lowering\SyntheticBoundNodeFactory.cs (2)
938
RefKind.In or RefKind.RefReadOnlyParameter when useStrictArgumentRefKinds =>
RefKindExtensions
.StrictIn,
1707
case
RefKindExtensions
.StrictIn: