17 overrides of TypeParameters
Microsoft.CodeAnalysis.CSharp (17)
Symbols\AnonymousTypes\PublicSymbols\AnonymousManager.TypeOrDelegatePublicSymbol.cs (1)
101public sealed override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.DelegateTemplateSymbol.cs (1)
249public override ImmutableArray<TypeParameterSymbol> TypeParameters { get; }
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.TemplateSymbol.cs (1)
154public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\ErrorTypeSymbol.cs (1)
322public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\Metadata\PE\PENamedTypeSymbol.cs (1)
2119public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\NativeIntegerTypeSymbol.cs (1)
40public override ImmutableArray<TypeParameterSymbol> TypeParameters => ImmutableArray<TypeParameterSymbol>.Empty;
Symbols\Retargeting\RetargetingNamedTypeSymbol.cs (1)
72public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\Source\ImplicitNamedTypeSymbol.cs (1)
86public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\Source\SourceNamedTypeSymbol.cs (1)
753public override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\SubstitutedNamedTypeSymbol.cs (1)
93public sealed override ImmutableArray<TypeParameterSymbol> TypeParameters
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListEnumeratorTypeSymbol.cs (1)
131public override ImmutableArray<TypeParameterSymbol> TypeParameters => ImmutableArray<TypeParameterSymbol>.Empty;
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (1)
844public override ImmutableArray<TypeParameterSymbol> TypeParameters { get; }
Symbols\Synthesized\SynthesizedContainer.cs (1)
80public sealed override ImmutableArray<TypeParameterSymbol> TypeParameters => _typeParameters;
Symbols\Synthesized\SynthesizedEmbeddedAttributeSymbol.cs (1)
57public override ImmutableArray<TypeParameterSymbol> TypeParameters => ImmutableArray<TypeParameterSymbol>.Empty;
Symbols\Synthesized\SynthesizedHotReloadExceptionSymbol.cs (1)
97public override ImmutableArray<TypeParameterSymbol> TypeParameters => [];
Symbols\Synthesized\SynthesizedInlineArrayTypeSymbol.cs (1)
48public override ImmutableArray<TypeParameterSymbol> TypeParameters { get; }
Symbols\Synthesized\SynthesizedPrivateImplementationDetailsType.cs (1)
41public override ImmutableArray<TypeParameterSymbol> TypeParameters => ImmutableArray<TypeParameterSymbol>.Empty;
73 references to TypeParameters
Microsoft.CodeAnalysis.CSharp (73)
Binder\Binder_Conversions.cs (1)
725((NamedTypeSymbol)method.ReturnType).TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[0].Type.Equals(((NamedTypeSymbol)arg.destination).TypeParameters[0], TypeCompareKind.ConsiderEverything));
Binder\Binder_Expressions.cs (4)
2697Error(diagnostics, ErrorCode.ERR_ValConstraintNotSatisfied, node, nullableType, nullableType.TypeParameters.Single(), indexType); 2777Error(diagnostics, ErrorCode.ERR_ValConstraintNotSatisfied, node, nullableType, nullableType.TypeParameters.Single(), rangeType); 2804Error(diagnostics, ErrorCode.ERR_ValConstraintNotSatisfied, operand, nullableType, nullableType.TypeParameters.Single(), indexType); 11580var typeParameters = delegateType.TypeParameters;
Binder\Binder_Symbols.cs (2)
1239unconstructedType.TypeParameters, 1251resultType = unconstructedType.Construct(PlaceholderTypeArgumentSymbol.CreateTypeArguments(unconstructedType.TypeParameters));
Binder\Binder_Unsafe.cs (3)
74var arity = typeSymbol.TypeParameters.Length; 77var typeParameter = typeSymbol.TypeParameters[i]; 149if (shouldCheckConstraints && symbol is NamedTypeSymbol { TypeParameters.Length: > 0 })
Binder\InMethodBinder.cs (1)
338typeParameters = _methodSymbol.ContainingType.TypeParameters.Concat(typeParameters);
Binder\Semantics\Conversions\ConversionsBase.cs (2)
3264TypeParameters: { Length: 1 } 3711switch (original.TypeParameters[i].Variance)
Binder\Semantics\Operators\BinaryOperatorOverloadResolution.cs (1)
1533extension.TypeParameters,
Binder\Semantics\Operators\UnaryOperatorOverloadResolution.cs (1)
174extension.TypeParameters,
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (1)
3204extension.TypeParameters,
Binder\Semantics\OverloadResolution\OverloadResolution.cs (1)
820extension.TypeSubstitution, extension.TypeParameters, extension.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics,
Binder\WithClassTypeParametersBinder.cs (2)
42foreach (TypeParameterSymbol tps in _namedType.TypeParameters) 56foreach (var parameter in _namedType.TypeParameters)
Compilation\SyntaxTreeSemanticModel.cs (1)
2218return this.GetTypeParameterSymbol(typeSymbol.TypeParameters, typeParameter).GetPublicSymbol();
Compiler\ClsComplianceChecker.cs (1)
252CheckTypeParameterCompliance(symbol.TypeParameters, symbol);
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (2)
458SymbolKind.NamedType or SymbolKind.ErrorType => ((NamedTypeSymbol)otherContainer).TypeParameters, 650var typeParameters = type.TypeParameters;
Emitter\Model\NamedTypeSymbolAdapter.cs (1)
462foreach (var t in AdaptedNamedTypeSymbol.TypeParameters)
FlowAnalysis\NullableWalker.cs (4)
4726extension.TypeParameters, 5724extension.TypeParameters, 8979extension.TypeSubstitution, extension.TypeParameters, extension.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics, 12820extension.TypeParameters,
Lowering\LocalRewriter\DelegateCacheContainer.cs (2)
34type.TypeParameters : 35(owner.ContainingType is { IsExtension: true } extensionType ? extensionType.TypeParameters : []).Concat(
Lowering\LocalRewriter\DelegateCacheRewriter.cs (1)
193usedTypeParametersContains(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)
268get { return TypeParameters.Length; }
Symbols\ConstraintsHelper.cs (2)
852type.OriginalDefinition.TypeParameters, 939extension.TypeSubstitution, extension.TypeParameters, extension.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics,
Symbols\ConstructedNamedTypeSymbol.cs (1)
64map: new TypeMap(constructedFrom.ContainingType, constructedFrom.OriginalDefinition.TypeParameters, typeArgumentsWithAnnotations),
Symbols\ErrorTypeSymbol.cs (1)
682_map = new TypeMap(constructedFrom.ContainingType, constructedFrom.OriginalDefinition.TypeParameters, typeArgumentsWithAnnotations);
Symbols\Extensions\SourceExtensionImplementationMethodSymbol.cs (1)
22: base(sourceMethod, TypeMap.Empty, sourceMethod.ContainingType.TypeParameters.Concat(sourceMethod.TypeParameters))
Symbols\Extensions\SynthesizedExtensionMarker.cs (1)
117ContainingType.TypeParameters.Any(static (p, name) => p.Name == name, name))
Symbols\MemberSymbolExtensions.cs (3)
138? method.ContainingType.TypeParameters.Concat(method.TypeParameters) 145return property.ContainingType.TypeParameters; 576return ((NamedTypeSymbol)symbol).TypeParameters;
Symbols\Metadata\PE\MemberRefMetadataDecoder.cs (1)
106typeArgument = namedType.TypeParameters[position - arityOffset];
Symbols\NamedTypeSymbol.cs (4)
1285var typeParameters = definition.TypeParameters; 1456if (ConstructedNamedTypeSymbol.TypeParametersMatchTypeArguments(this.TypeParameters, typeArguments)) 1558return TypeMap.TypeParametersAsTypeSymbolsWithAnnotations(this.TypeParameters); 1710GetUnificationUseSiteDiagnosticRecursive(ref result, this.TypeParameters, owner, ref checkedTypes);
Symbols\PublicModel\NamedTypeSymbol.cs (1)
68return UnderlyingNamedTypeSymbol.TypeParameters.GetPublicSymbols();
Symbols\Retargeting\RetargetingNamedTypeSymbol.cs (1)
85this.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 (2)
219typeParameters = owner.ContainingType.TypeParameters.Concat(typeParameters); 575foreach (var typeParameter in extension.TypeParameters)
Symbols\Source\SourceMemberContainerSymbol.cs (4)
628foreach (var typeParameter in this.TypeParameters) 2440foreach (TypeParameterSymbol typeParameter in indexer.ContainingType.TypeParameters) 2689foreach (var tp in TypeParameters) 6159foreach (var typeParameter in TypeParameters)
Symbols\Source\SourceNamedTypeSymbol_Bases.cs (1)
434foreach (var typeParameter in type.TypeParameters)
Symbols\Source\SourceNamedTypeSymbol_Extension.cs (1)
1259extension.TypeParameters,
Symbols\Source\SourcePropertySymbol.cs (1)
696if (ContainingType.TypeParameters.Any(static tp => tp.Name == ParameterSymbol.ValueParameterName))
Symbols\SubstitutedNamedTypeSymbol.cs (2)
71_lazyTypeParameters = constructedFrom.TypeParameters; 119typeParameters = prevMap.SubstituteTypeParameters(OriginalDefinition.TypeParameters);
Symbols\SymbolExtensions.cs (2)
36Debug.Assert(type.TypeParameters.IsEmpty == (typeArguments.Length == 0)); 37return type.TypeParameters.IsEmpty ? type : type.Construct(typeArguments, unbound: false);
Symbols\TypeMap.cs (1)
142return WithAlphaRename(oldOwner.OriginalDefinition.TypeParameters, newOwner, propagateAttributes: false, out newTypeParameters);
Symbols\TypeSymbolExtensions.cs (4)
1699var typeParameters = type.OriginalDefinition.TypeParameters; 1774return type.TypeParameters; 1794result.AddRange(type.TypeParameters); 1805foreach (TypeParameterSymbol tpEnclosing in type.TypeParameters)
Symbols\UnboundGenericType.cs (1)
40constructedFrom.TypeParameters,
Symbols\VarianceSafety.cs (3)
94Debug.Assert(container.TypeParameters.Any(static tp => tp.Variance != VarianceKind.None)); 111if (container.TypeParameters.Any(static tp => tp.Variance != VarianceKind.None)) 388TypeParameterSymbol typeParam = namedType.TypeParameters[i];