25 references to StrictIn
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
: