23 references to StrictIn
Microsoft.CodeAnalysis.CSharp (23)
BoundTree\Constructors.cs (3)
194
Debug.Assert(argumentRefKind is RefKind.None or RefKind.Ref or RefKind.In or RefKind.Out or RefKindExtensions.
StrictIn
&&
198
RefKind.In => argumentRefKind == RefKindExtensions.
StrictIn
,
199
RefKind.RefReadOnlyParameter => argumentRefKind is RefKind.In or RefKindExtensions.
StrictIn
,
CodeGen\EmitExpression.cs (6)
724
Debug.Assert(refKind is RefKind.In or RefKind.Ref or RefKind.Out or RefKindExtensions.
StrictIn
);
749
Debug.Assert(refKind is RefKind.Ref or RefKind.Out or RefKindExtensions.
StrictIn
);
752
return refKind == RefKindExtensions.
StrictIn
? AddressKind.ReadOnlyStrict : AddressKind.Writeable;
991
RefKind.In => argRefKind == RefKindExtensions.
StrictIn
,
992
RefKind.RefReadOnlyParameter => argRefKind is RefKind.In or RefKindExtensions.
StrictIn
,
3033
LocalDefinition temp = EmitAddress(assignmentOperator.Right, lhs.GetRefKind() 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)
1553
case RefKindExtensions.
StrictIn
:
Lowering\LocalRewriter\LocalRewriter_Call.cs (4)
971
return RefKindExtensions.
StrictIn
;
1226
refKindsBuilder[i] = argRefKind == RefKind.None ? RefKind.In : RefKindExtensions.
StrictIn
;
1441
argRefKind = argRefKind == RefKind.None ? RefKind.In : RefKindExtensions.
StrictIn
;
1463
? (argRefKind == RefKind.None ? RefKind.In : RefKindExtensions.
StrictIn
)
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (1)
566
var call = _factory.New(constructor, arguments: [temp], argumentRefKinds: [asReadOnlySpan ? RefKindExtensions.
StrictIn
: RefKind.Ref]);
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (1)
747
collectionTempRefKind = enumeratorInfo.InlineArraySpanType == WellKnownType.System_Span_T ? RefKind.Ref : RefKindExtensions.
StrictIn
;
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (1)
312
possiblyRefCapturedReceiver = _factory.StoreToTemp(possiblyRefCapturedReceiver, out var refCapture, createSpan.Parameters[0].RefKind == RefKind.In ? RefKindExtensions.
StrictIn
: RefKind.Ref);
Lowering\LocalRewriter\LocalRewriter_StringConcat.cs (1)
488
argumentRefKindsOpt: [readOnlySpanCtorRefParamChar.Parameters[0].RefKind == RefKind.Ref ? RefKind.Ref : RefKindExtensions.
StrictIn
],
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (2)
648
Debug.Assert(refKind is RefKindExtensions.
StrictIn
or RefKind.Ref or RefKind.Out);
666
Debug.Assert(refKind is RefKindExtensions.
StrictIn
or RefKind.Ref or RefKind.In);
Lowering\SyntheticBoundNodeFactory.cs (2)
896
RefKind.In or RefKind.RefReadOnlyParameter when useStrictArgumentRefKinds => RefKindExtensions.
StrictIn
,
1685
case RefKindExtensions.
StrictIn
: