Base:
property
RefKind
Microsoft.CodeAnalysis.CSharp.Symbols.MethodSymbol.RefKind
4 writes to RefKind
Microsoft.CodeAnalysis.CSharp (4)
Symbols\FunctionPointers\FunctionPointerMethodSymbol.cs (4)
455
RefKind
= refKind;
500
RefKind
= refKind;
530
RefKind
= refKind;
553
RefKind
= getRefKind(retInfo, RefCustomModifiers, RefKind.RefReadOnly, RefKind.Ref, requiresLocationAllowed: false);
32 references to RefKind
Microsoft.CodeAnalysis.CSharp (32)
Binder\Binder.ValueChecks.cs (2)
3445
if (methodSymbol.
RefKind
== RefKind.None)
3884
if (signature.
RefKind
== RefKind.None)
Binder\Binder_Invocation.cs (1)
2376
returnRefKind: funcPtr.Signature.
RefKind
);
Binder\Semantics\Conversions\ConversionsBase.cs (3)
3412
return sourceSig.
RefKind
== destinationSig.
RefKind
3413
&& hasConversion(sourceSig.
RefKind
, sourceSig.ReturnTypeWithAnnotations, destinationSig.ReturnTypeWithAnnotations, ref useSiteInfo);
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (4)
1903
return sourceSignature.
RefKind
== targetSignature.
RefKind
2431
if ((sourceSignature.ReturnType.IsReferenceType || sourceSignature.ReturnType.IsFunctionPointer()) && sourceSignature.
RefKind
== RefKind.None)
2781
if ((sourceSignature.ReturnType.IsReferenceType || sourceSignature.ReturnType.IsFunctionPointer()) && sourceSignature.
RefKind
== RefKind.None)
CodeGen\EmitAddress.cs (1)
123
var funcPtrRefKind = funcPtrInvocation.FunctionPointer.Signature.
RefKind
;
CodeGen\EmitExpression.cs (3)
2223
return ((BoundFunctionPointerInvocation)receiver).FunctionPointer.Signature.
RefKind
!= RefKind.None;
2942
Debug.Assert(left.FunctionPointer.Signature.
RefKind
!= RefKind.None);
3138
Debug.Assert(((BoundFunctionPointerInvocation)expression).FunctionPointer.Signature.
RefKind
!= RefKind.None);
CodeGen\Optimizer.cs (1)
1061
Debug.Assert(((BoundFunctionPointerInvocation)lhs).FunctionPointer.Signature.
RefKind
== RefKind.Ref, "only ref returning function pointers are assignable");
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (4)
675
ValidateFunctionPointerParamOrReturn(sig.ReturnTypeWithAnnotations, sig.
RefKind
, sig.RefCustomModifiers, allowOut: false);
676
ValidateFunctionPointerParamOrReturn(otherSig.ReturnTypeWithAnnotations, otherSig.
RefKind
, otherSig.RefCustomModifiers, allowOut: false);
677
if (sig.
RefKind
!= otherSig.
RefKind
|| !AreTypesEqual(sig.ReturnTypeWithAnnotations, otherSig.ReturnTypeWithAnnotations))
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (1)
703
Debug.Assert(((BoundFunctionPointerInvocation)originalLHS).FunctionPointer.Signature.
RefKind
!= RefKind.None);
Symbols\Compilation_WellKnownMembers.cs (1)
1003
handle(sig.
RefKind
, sig.RefCustomModifiers, sig.ReturnTypeWithAnnotations);
Symbols\FunctionPointers\FunctionPointerMethodSymbol.cs (10)
340
this.
RefKind
,
350
Debug.Assert(
RefKind
== signature.
RefKind
);
351
var returnVariance =
RefKind
== RefKind.None ? variance : VarianceKind.None;
554
Debug.Assert(
RefKind
!= RefKind.Out);
648
var modifiersToSearch =
RefKind
!= RefKind.None ? RefCustomModifiers : ReturnTypeWithAnnotations.CustomModifiers;
671
var modifiersToSearch =
RefKind
!= RefKind.None ? RefCustomModifiers : ReturnTypeWithAnnotations.CustomModifiers;
724
|| !FunctionPointerTypeSymbol.RefKindEquals(compareKind,
RefKind
, other.
RefKind
)
761
=> Hash.Combine(ReturnType, Hash.Combine(((int)CallingConvention).GetHashCode(), ((int)FunctionPointerTypeSymbol.GetRefKindForHashCode(
RefKind
)).GetHashCode()));
Symbols\Metadata\PE\DynamicTypeDecoder.cs (1)
354
var (transformedReturnWithAnnotations, madeChanges) = handle(ref this, sig.
RefKind
, sig.RefCustomModifiers, sig.ReturnTypeWithAnnotations);