5 instantiations of FunctionPointerMethodSymbol
Microsoft.CodeAnalysis.CSharp (5)
Symbols\FunctionPointers\FunctionPointerMethodSymbol.cs (5)
97
return new
FunctionPointerMethodSymbol
(
253
return new
FunctionPointerMethodSymbol
(
299
return new
FunctionPointerMethodSymbol
(
331
=> new
FunctionPointerMethodSymbol
(callingConvention, retAndParamTypes, useUpdatedEscapeRules: containingModule.UseUpdatedEscapeRules);
338
=> new
FunctionPointerMethodSymbol
(
69 references to FunctionPointerMethodSymbol
Microsoft.CodeAnalysis.CSharp (62)
Binder\Binder.ValueChecks.cs (5)
2405
if (method is
FunctionPointerMethodSymbol
)
3444
var
methodSymbol = ptrInvocation.FunctionPointer.Signature;
3883
FunctionPointerMethodSymbol
signature = functionPointerInvocation.FunctionPointer.Signature;
4150
var
ptrSymbol = ptrInvocation.FunctionPointer.Signature;
4865
var
ptrSymbol = ptrInvocation.FunctionPointer.Signature;
Binder\Binder_Invocation.cs (4)
2349
var overloadResolutionResult = OverloadResolutionResult<
FunctionPointerMethodSymbol
>.GetInstance();
2351
var methodsBuilder = ArrayBuilder<
FunctionPointerMethodSymbol
>.GetInstance(1);
2363
ImmutableArray<
FunctionPointerMethodSymbol
> methods = methodsBuilder.ToImmutableAndFree();
2390
MemberResolutionResult<
FunctionPointerMethodSymbol
> methodResult = overloadResolutionResult.ValidResult;
Binder\RefSafetyAnalysis.cs (1)
864
var
method = node.FunctionPointer.Signature;
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (5)
1462
? new CallingConventionInfo(method.CallingConvention, ((
FunctionPointerMethodSymbol
)method).GetCallingConventionModifiers())
1886
private static bool FunctionPointerCallingConventionsEqual(
FunctionPointerMethodSymbol
sourceSignature,
FunctionPointerMethodSymbol
targetSignature)
1901
private static bool FunctionPointerRefKindsEqual(
FunctionPointerMethodSymbol
sourceSignature,
FunctionPointerMethodSymbol
targetSignature)
Binder\Semantics\OverloadResolution\OverloadResolution.cs (2)
556
ArrayBuilder<
FunctionPointerMethodSymbol
> funcPtrBuilder,
558
OverloadResolutionResult<
FunctionPointerMethodSymbol
> overloadResolutionResult,
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (4)
473
if (firstSupported.Member is
FunctionPointerMethodSymbol
488
&& (firstSupported.Member is not
FunctionPointerMethodSymbol
))
936
FunctionPointerMethodSymbol
functionPointerMethodBeingInvoked = symbols.IsDefault || symbols.Length != 1
938
: symbols[0] as
FunctionPointerMethodSymbol
;
CodeGen\EmitExpression.cs (1)
4029
FunctionPointerMethodSymbol
method = ptrInvocation.FunctionPointer.Signature;
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (4)
388
var
sig = symbol.Signature;
672
var
sig = type.Signature;
673
var
otherSig = other.Signature;
911
var
sig = symbol.Signature;
Emitter\Model\FunctionPointerTypeSymbolAdapter.cs (3)
59
/// as a StandaloneMethodSig. To do this, we wrap the <see cref="
FunctionPointerMethodSymbol
"/> in a
64
private readonly
FunctionPointerMethodSymbol
_underlying;
67
internal FunctionPointerMethodSignature(
FunctionPointerMethodSymbol
underlying)
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
665
var requiresInstanceReceiver = methodOrIndexer.RequiresInstanceReceiver() && methodOrIndexer is not MethodSymbol { MethodKind: MethodKind.Constructor } and not
FunctionPointerMethodSymbol
;
Symbols\Compilation_WellKnownMembers.cs (1)
1002
var
sig = funcPtr.Signature;
Symbols\FunctionPointers\FunctionPointerMethodSymbol.cs (13)
23
public static
FunctionPointerMethodSymbol
CreateFromSource(FunctionPointerTypeSyntax syntax, Binder typeBinder, BindingDiagnosticBag diagnostics, ConsList<TypeSymbol> basesBeingResolved, bool suppressUseSiteDiagnostics)
243
internal static
FunctionPointerMethodSymbol
CreateFromPartsForTest(
267
internal static
FunctionPointerMethodSymbol
CreateFromParts(
330
public static
FunctionPointerMethodSymbol
CreateFromMetadata(ModuleSymbol containingModule, CallingConvention callingConvention, ImmutableArray<ParamInfo<TypeSymbol>> retAndParamTypes)
333
public
FunctionPointerMethodSymbol
SubstituteParameterSymbols(
348
internal
FunctionPointerMethodSymbol
MergeEquivalentTypes(
FunctionPointerMethodSymbol
signature, VarianceKind variance)
400
public
FunctionPointerMethodSymbol
SetNullabilityForReferenceTypes(Func<TypeWithAnnotations, TypeWithAnnotations> transform)
558
static ImmutableArray<FunctionPointerParameterSymbol> makeParametersFromMetadata(ReadOnlySpan<ParamInfo<TypeSymbol>> parameterTypes,
FunctionPointerMethodSymbol
parent)
603
internal
FunctionPointerMethodSymbol
ApplyNullableTransforms(byte defaultTransformFlag, ImmutableArray<byte> transforms, ref int position)
705
if (!(other is
FunctionPointerMethodSymbol
method))
713
internal bool Equals(
FunctionPointerMethodSymbol
other, TypeCompareKind compareKind)
721
private bool EqualsNoParameters(
FunctionPointerMethodSymbol
other, TypeCompareKind compareKind)
Symbols\FunctionPointers\FunctionPointerParameterSymbol.cs (2)
14
private readonly
FunctionPointerMethodSymbol
_containingSymbol;
16
public FunctionPointerParameterSymbol(TypeWithAnnotations typeWithAnnotations, RefKind refKind, int ordinal,
FunctionPointerMethodSymbol
containingSymbol, ImmutableArray<CustomModifier> refCustomModifiers)
Symbols\FunctionPointers\FunctionPointerTypeSymbol.cs (9)
20
FunctionPointerMethodSymbol
.CreateFromSource(
40
=> new FunctionPointerTypeSymbol(
FunctionPointerMethodSymbol
.CreateFromPartsForTest(callingConvention, returnType, refCustomModifiers, returnRefKind, parameterTypes, parameterRefCustomModifiers, parameterRefKinds, compilation));
53
=> new FunctionPointerTypeSymbol(
FunctionPointerMethodSymbol
.CreateFromParts(callingConvention, callingConventionModifiers, returnType, returnRefKind, parameterTypes, parameterRefKinds, compilation));
57
FunctionPointerMethodSymbol
.CreateFromMetadata(containingModule, callingConvention, retAndParamTypes));
66
private FunctionPointerTypeSymbol(
FunctionPointerMethodSymbol
signature)
71
public
FunctionPointerMethodSymbol
Signature { get; }
137
var
newSignature = Signature.ApplyNullableTransforms(defaultTransformFlag, transforms, ref position);
163
var
mergedSignature = Signature.MergeEquivalentTypes(((FunctionPointerTypeSymbol)other).Signature, variance);
174
var
substitutedSignature = Signature.SetNullabilityForReferenceTypes(transform);
Symbols\Metadata\PE\DynamicTypeDecoder.cs (1)
352
var
sig = type.Signature;
Symbols\Retargeting\RetargetingSymbolTranslator.cs (1)
761
var
signature = type.Signature;
Symbols\Source\ParameterHelpers.cs (5)
65
FunctionPointerMethodSymbol
owner,
70
return MakeParameters<FunctionPointerParameterSyntax, FunctionPointerParameterSymbol,
FunctionPointerMethodSymbol
>(
81
parameterCreationFunc: (Binder binder,
FunctionPointerMethodSymbol
owner, TypeWithAnnotations parameterType,
130
Debug.Assert(!parsingFunctionPointer || owner is
FunctionPointerMethodSymbol
);
678
Debug.Assert(containingSymbol is null || (containingSymbol is
FunctionPointerMethodSymbol
or { ContainingType: not null }));
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (2)
CodeGen\CodeGenFunctionPointersTests.cs (2)
303
var
signature = ((FunctionPointerTypeSymbol)field.Type).Signature;
379
var
signature = ((FunctionPointerTypeSymbol)field.Type).Signature;
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (4)
Symbols\FunctionPointerTypeSymbolTests.cs (4)
196
var
firstSignature = ((FunctionPointerTypeSymbol)m.Parameters[0].Type).Signature;
197
var
secondSignature = ((FunctionPointerTypeSymbol)m.Parameters[1].Type).Signature;
399
var
sixthParamParam = ((FunctionPointerTypeSymbol)sixthParam.Parameters.Single().Type).Signature;
679
var
signature = ((FunctionPointerTypeSymbol)m.Parameters.Single().Type).Signature;
Microsoft.CodeAnalysis.CSharp.Test.Utilities (1)
FunctionPointerUtilities.cs (1)
277
var
signature = funcPtr.Signature;