21 overrides of ExtensionParameter
Microsoft.CodeAnalysis.CSharp (21)
Symbols\AnonymousTypes\PublicSymbols\AnonymousManager.TypeOrDelegatePublicSymbol.cs (1)
49
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.TypeOrDelegateTemplateSymbol.cs (1)
127
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\ArrayTypeSymbol.cs (1)
238
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\DynamicTypeSymbol.cs (1)
109
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\ErrorTypeSymbol.cs (1)
108
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\FunctionPointers\FunctionPointerTypeSymbol.cs (1)
75
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\FunctionTypeSymbol.cs (1)
102
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\NativeIntegerTypeSymbol.cs (1)
187
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\PointerTypeSymbol.cs (1)
109
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\Retargeting\RetargetingNamedTypeSymbol.cs (1)
96
internal sealed override ParameterSymbol
ExtensionParameter
Symbols\Source\ImplicitNamedTypeSymbol.cs (1)
178
internal sealed override ParameterSymbol
ExtensionParameter
=> null;
Symbols\Source\SourceNamedTypeSymbol_Extension.cs (1)
53
internal sealed override ParameterSymbol?
ExtensionParameter
Symbols\SubstitutedNamedTypeSymbol.cs (1)
497
internal sealed override ParameterSymbol?
ExtensionParameter
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListEnumeratorTypeSymbol.cs (1)
179
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (1)
856
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\Synthesized\SynthesizedContainer.cs (1)
49
internal sealed override ParameterSymbol
ExtensionParameter
=> null;
Symbols\Synthesized\SynthesizedEmbeddedAttributeSymbol.cs (1)
120
internal sealed override ParameterSymbol
ExtensionParameter
=> null;
Symbols\Synthesized\SynthesizedHotReloadExceptionSymbol.cs (1)
113
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\Synthesized\SynthesizedInlineArrayTypeSymbol.cs (1)
110
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\Synthesized\SynthesizedPrivateImplementationDetailsType.cs (1)
93
internal sealed override ParameterSymbol?
ExtensionParameter
=> null;
Symbols\TypeParameterSymbol.cs (1)
594
internal sealed override ParameterSymbol
ExtensionParameter
=> null;
38 references to ExtensionParameter
Microsoft.CodeAnalysis.CSharp (38)
Binder\Binder.ValueChecks.cs (1)
2155
var extensionParameter = symbol.ContainingType.
ExtensionParameter
;
Binder\Binder_Conversions.cs (1)
2991
return method.ContainingType.
ExtensionParameter
;
Binder\Binder_Expressions.cs (2)
8038
Debug.Assert(propertySymbol.ContainingType.
ExtensionParameter
is not null);
8042
receiver = CheckAndConvertExtensionReceiver(receiver, propertySymbol.ContainingType.
ExtensionParameter
, diagnostics);
Binder\Binder_Invocation.cs (1)
1291
receiver = CheckAndConvertExtensionReceiver(receiver, method.ContainingType.
ExtensionParameter
, diagnostics);
Binder\ForEachLoopBinder.cs (2)
252
else if (getEnumeratorMethod.GetIsNewExtensionMember() && getEnumeratorMethod.ContainingType.
ExtensionParameter
.RefKind == RefKind.Ref) // Tracked by https://github.com/dotnet/roslyn/issues/76130: add test coverage for 'ref readonly' and 'in'
1044
builder.CollectionType = builder.GetEnumeratorInfo.Method.ContainingType.
ExtensionParameter
.Type;
Binder\InMethodBinder.cs (1)
339
if (_methodSymbol.ContainingType.
ExtensionParameter
is { Name: not "" } receiver)
Binder\Semantics\Conversions\Conversions.cs (1)
347
thisParameter = method.ContainingType.
ExtensionParameter
;
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (4)
3195
Debug.Assert(extension.
ExtensionParameter
is not null);
3196
Debug.Assert(!extension.
ExtensionParameter
.Type.IsDynamic());
3205
[extension.
ExtensionParameter
.TypeWithAnnotations],
3206
[extension.
ExtensionParameter
.RefKind],
Binder\Semantics\OverloadResolution\OverloadResolution.cs (3)
2094
ParameterSymbol? extensionParameter = member.ContainingType.
ExtensionParameter
;
3892
Debug.Assert(member.ContainingType.
ExtensionParameter
is not null);
3893
hasSomeRefKinds |= member.ContainingType.
ExtensionParameter
.RefKind != RefKind.None;
Binder\Semantics\OverloadResolution\OverloadResolution_ArgsToParameters.cs (1)
62
return [symbol.ContainingType.
ExtensionParameter
.TypeWithAnnotations, .. symbol.GetParameterTypes()];
Binder\WithExtensionParameterBinder.cs (2)
28
if (_type.
ExtensionParameter
is { Name: not "" } parameter &&
46
if (_type.
ExtensionParameter
is { Name: not "" } parameter && parameter.Name == name)
FlowAnalysis\DefiniteAssignment.cs (1)
410
&& _symbol.ContainingType.
ExtensionParameter
is { } foundExtensionParameter)
Lowering\LocalRewriter\LocalRewriter_Call.cs (2)
1251
Debug.Assert(methodOrIndexer.ContainingType.
ExtensionParameter
is not null);
1252
return methodOrIndexer.ContainingType.
ExtensionParameter
.Type as NamedTypeSymbol;
Symbols\Extensions\SourceExtensionImplementationMethodSymbol.cs (1)
18
Debug.Assert(sourceMethod.IsStatic || sourceMethod.ContainingType.
ExtensionParameter
is not null);
Symbols\MemberSymbolExtensions.cs (1)
117
if (symbol.GetIsNewExtensionMember() && symbol.ContainingType.
ExtensionParameter
is { } extensionParameter)
Symbols\Metadata\PE\PENamedTypeSymbol.cs (2)
466
Debug.Assert(@this.
ExtensionParameter
is not null);
505
@this.
ExtensionParameter
,
Symbols\PublicModel\TypeSymbol.cs (1)
155
IParameterSymbol? ITypeSymbol.ExtensionParameter => UnderlyingTypeSymbol.
ExtensionParameter
?.GetPublicSymbol();
Symbols\Retargeting\RetargetingNamedTypeSymbol.cs (1)
104
var extensionParameter = _underlyingType.
ExtensionParameter
is { } receiverParameter ? new RetargetingExtensionReceiverParameterSymbol(this, receiverParameter) : null;
Symbols\Source\ParameterHelpers.cs (1)
221
if (owner.ContainingType.
ExtensionParameter
is { Name: not "" } receiver)
Symbols\Source\SourceMemberMethodSymbol.cs (1)
381
if (!IsStatic && this.GetIsNewExtensionMember() && ContainingType.
ExtensionParameter
is { } extensionParameter)
Symbols\Source\SourceNamedTypeSymbol_Extension.cs (3)
150
if (extension.
ExtensionParameter
is null)
171
Debug.Assert(result.ContainingType.
ExtensionParameter
is not null);
173
Conversion conversion = compilation.Conversions.ConvertExtensionMethodThisArg(parameterType: result.ContainingType.
ExtensionParameter
.Type, receiverType, ref discardedUseSiteInfo, isMethodGroupConversion: false);
Symbols\Source\SourceOrdinaryMethodSymbol.cs (1)
921
else if (ContainingType is { IsExtension: true,
ExtensionParameter
.Name: "" } && !IsStatic)
Symbols\Source\SourcePropertySymbol.cs (2)
704
if (ContainingType.
ExtensionParameter
is { Name: ParameterSymbol.ValueParameterName })
710
if (!IsStatic && this.GetIsNewExtensionMember() && ContainingType.
ExtensionParameter
is { } extensionParameter &&
Symbols\Source\SourcePropertySymbolBase.cs (1)
1135
else if (ContainingType is { IsExtension: true,
ExtensionParameter
.Name: "" } && !IsStatic)
Symbols\SubstitutedNamedTypeSymbol.cs (1)
515
var unsubstitutedParameter = OriginalDefinition.
ExtensionParameter
;