17 overrides of TypeParameters
Microsoft.CodeAnalysis.CSharp (17)
Symbols\AnonymousTypes\PublicSymbols\AnonymousManager.TypeOrDelegatePublicSymbol.cs (1)
97public sealed override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.DelegateTemplateSymbol.cs (1)
244public override ImmutableArray<TypeParameterSymbol> TypeParameters { get; }
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.TemplateSymbol.cs (1)
150public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\ErrorTypeSymbol.cs (1)
316public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\Metadata\PE\PENamedTypeSymbol.cs (1)
2934public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\NativeIntegerTypeSymbol.cs (1)
38public override ImmutableArray<TypeParameterSymbol> TypeParameters => ImmutableArray<TypeParameterSymbol>.Empty;
Symbols\Retargeting\RetargetingNamedTypeSymbol.cs (1)
66public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\Source\ImplicitNamedTypeSymbol.cs (1)
86public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\Source\SourceNamedTypeSymbol.cs (1)
747public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\SubstitutedNamedTypeSymbol.cs (1)
94public sealed override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListEnumeratorTypeSymbol.cs (1)
122public override ImmutableArray<TypeParameterSymbol> TypeParameters => ImmutableArray<TypeParameterSymbol>.Empty;
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (1)
799public override ImmutableArray<TypeParameterSymbol> TypeParameters { get; }
Symbols\Synthesized\SynthesizedContainer.cs (1)
75public sealed override ImmutableArray<TypeParameterSymbol> TypeParameters => _typeParameters;
Symbols\Synthesized\SynthesizedEmbeddedAttributeSymbol.cs (1)
56public override ImmutableArray<TypeParameterSymbol> TypeParameters => ImmutableArray<TypeParameterSymbol>.Empty;
Symbols\Synthesized\SynthesizedHotReloadExceptionSymbol.cs (1)
85public override ImmutableArray<TypeParameterSymbol> TypeParameters => [];
Symbols\Synthesized\SynthesizedInlineArrayTypeSymbol.cs (1)
47public override ImmutableArray<TypeParameterSymbol> TypeParameters { get; }
Symbols\Synthesized\SynthesizedPrivateImplementationDetailsType.cs (1)
40public override ImmutableArray<TypeParameterSymbol> TypeParameters => ImmutableArray<TypeParameterSymbol>.Empty;
62 references to TypeParameters
Microsoft.CodeAnalysis.CSharp (62)
Binder\Binder_Conversions.cs (1)
648((NamedTypeSymbol)method.ReturnType).TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[0].Type.Equals(((NamedTypeSymbol)arg.destination).TypeParameters[0], TypeCompareKind.ConsiderEverything));
Binder\Binder_Expressions.cs (4)
2621Error(diagnostics, ErrorCode.ERR_ValConstraintNotSatisfied, node, nullableType, nullableType.TypeParameters.Single(), indexType); 2701Error(diagnostics, ErrorCode.ERR_ValConstraintNotSatisfied, node, nullableType, nullableType.TypeParameters.Single(), rangeType); 2728Error(diagnostics, ErrorCode.ERR_ValConstraintNotSatisfied, operand, nullableType, nullableType.TypeParameters.Single(), indexType); 11266var typeParameters = delegateType.TypeParameters;
Binder\Binder_Symbols.cs (2)
1234unconstructedType.TypeParameters, 1246resultType = unconstructedType.Construct(PlaceholderTypeArgumentSymbol.CreateTypeArguments(unconstructedType.TypeParameters));
Binder\InMethodBinder.cs (1)
337typeParameters = _methodSymbol.ContainingType.TypeParameters.Concat(typeParameters);
Binder\Semantics\Conversions\ConversionsBase.cs (2)
3242TypeParameters: { Length: 1 } 3689switch (original.TypeParameters[i].Variance)
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (1)
3203extension.TypeParameters,
Binder\Semantics\OverloadResolution\OverloadResolution.cs (3)
818extension.TypeSubstitution, extension.TypeParameters, extension.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics, 4396? method.ContainingType.TypeParameters.Concat(method.TypeParameters) 4403return property.ContainingType.TypeParameters;
Binder\WithClassTypeParametersBinder.cs (2)
42foreach (TypeParameterSymbol tps in _namedType.TypeParameters) 56foreach (var parameter in _namedType.TypeParameters)
Compilation\SyntaxTreeSemanticModel.cs (1)
2220return this.GetTypeParameterSymbol(typeSymbol.TypeParameters, typeParameter).GetPublicSymbol();
Compiler\ClsComplianceChecker.cs (1)
252CheckTypeParameterCompliance(symbol.TypeParameters, symbol);
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (2)
443SymbolKind.NamedType or SymbolKind.ErrorType => ((NamedTypeSymbol)otherContainer).TypeParameters, 636var typeParameters = type.TypeParameters;
Emitter\Model\NamedTypeSymbolAdapter.cs (1)
459foreach (var t in AdaptedNamedTypeSymbol.TypeParameters)
Lowering\LocalRewriter\DelegateCacheContainer.cs (2)
33type.TypeParameters : 34(owner.ContainingType is { IsExtension: true } extensionType ? extensionType.TypeParameters : []).Concat(
Lowering\LocalRewriter\DelegateCacheRewriter.cs (1)
194usedTypeParametersContains(usedTypeParameters, extensionType.TypeParameters))
Lowering\LocalRewriter\DynamicSiteContainer.cs (1)
19(topLevelMethod.ContainingSymbol is NamedTypeSymbol { IsExtension: true } extensionType ? extensionType.TypeParameters : []).Concat(
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.TypeOrDelegateTemplateSymbol.cs (1)
264get { return TypeParameters.Length; }
Symbols\ConstraintsHelper.cs (1)
846type.OriginalDefinition.TypeParameters,
Symbols\ConstructedNamedTypeSymbol.cs (1)
64map: new TypeMap(constructedFrom.ContainingType, constructedFrom.OriginalDefinition.TypeParameters, typeArgumentsWithAnnotations),
Symbols\ErrorTypeSymbol.cs (1)
674_map = new TypeMap(constructedFrom.ContainingType, constructedFrom.OriginalDefinition.TypeParameters, typeArgumentsWithAnnotations);
Symbols\Extensions\SourceExtensionImplementationMethodSymbol.cs (1)
15: base(sourceMethod, TypeMap.Empty, sourceMethod.ContainingType.TypeParameters.Concat(sourceMethod.TypeParameters))
Symbols\Extensions\SynthesizedExtensionMarker.cs (2)
80checkUnderspecifiedGenericExtension(parameter, ContainingType.TypeParameters, diagnostics); 108ContainingType.TypeParameters.Any(static (p, name) => p.Name == name, name))
Symbols\MemberSymbolExtensions.cs (1)
502return ((NamedTypeSymbol)symbol).TypeParameters;
Symbols\Metadata\PE\MemberRefMetadataDecoder.cs (1)
106typeArgument = namedType.TypeParameters[position - arityOffset];
Symbols\Metadata\PE\MetadataDecoder.cs (1)
103return type.TypeParameters[position];
Symbols\Metadata\PE\PENamedTypeSymbol.cs (1)
488ImmutableArray<TypeParameterSymbol> combinedTypeParameters = @this.TypeParameters.Concat(method.TypeParameters);
Symbols\Metadata\PE\PETypeParameterSymbol.cs (1)
611((PENamedTypeSymbol)_containingSymbol).TypeParameters;
Symbols\NamedTypeSymbol.cs (4)
1056var typeParameters = definition.TypeParameters; 1227if (ConstructedNamedTypeSymbol.TypeParametersMatchTypeArguments(this.TypeParameters, typeArguments)) 1329return TypeMap.TypeParametersAsTypeSymbolsWithAnnotations(this.TypeParameters); 1481GetUnificationUseSiteDiagnosticRecursive(ref result, this.TypeParameters, owner, ref checkedTypes);
Symbols\PublicModel\NamedTypeSymbol.cs (1)
68return UnderlyingNamedTypeSymbol.TypeParameters.GetPublicSymbols();
Symbols\Retargeting\RetargetingNamedTypeSymbol.cs (1)
79this.RetargetingTranslator.Retarget(_underlyingType.TypeParameters), default(ImmutableArray<TypeParameterSymbol>));
Symbols\Retargeting\RetargetingSymbolTranslator.cs (2)
572newParameters.AddRange(genericType.TypeParameters); 1062return retargetedContainingType.TypeParameters[typeParameter.Ordinal];
Symbols\Source\ParameterHelpers.cs (1)
219typeParameters = owner.ContainingType.TypeParameters.Concat(typeParameters);
Symbols\Source\SourceMemberContainerSymbol.cs (2)
601foreach (var typeParameter in this.TypeParameters) 2264foreach (TypeParameterSymbol typeParameter in indexer.ContainingType.TypeParameters)
Symbols\Source\SourcePropertySymbol.cs (1)
699if (ContainingType.TypeParameters.Any(static tp => tp.Name == ParameterSymbol.ValueParameterName))
Symbols\SubstitutedNamedTypeSymbol.cs (2)
72_lazyTypeParameters = constructedFrom.TypeParameters; 120typeParameters = prevMap.SubstituteTypeParameters(OriginalDefinition.TypeParameters);
Symbols\SymbolExtensions.cs (2)
35Debug.Assert(type.TypeParameters.IsEmpty == (typeArguments.Length == 0)); 36return type.TypeParameters.IsEmpty ? type : type.Construct(typeArguments, unbound: false);
Symbols\TypeMap.cs (1)
142return WithAlphaRename(oldOwner.OriginalDefinition.TypeParameters, newOwner, out newTypeParameters);
Symbols\TypeSymbolExtensions.cs (4)
1615var typeParameters = type.OriginalDefinition.TypeParameters; 1690return type.TypeParameters; 1710result.AddRange(type.TypeParameters); 1721foreach (TypeParameterSymbol tpEnclosing in type.TypeParameters)
Symbols\UnboundGenericType.cs (1)
40constructedFrom.TypeParameters,
Symbols\VarianceSafety.cs (3)
91Debug.Assert(container.TypeParameters.Any(static tp => tp.Variance != VarianceKind.None)); 108if (container.TypeParameters.Any(static tp => tp.Variance != VarianceKind.None)) 385TypeParameterSymbol typeParam = namedType.TypeParameters[i];