8 implementations of TypeArguments
GenerateDocumentationAndConfigFiles (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
84public abstract ImmutableArray<ITypeSymbol> TypeArguments { get; }
Microsoft.CodeAnalysis.Analyzers (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
84public abstract ImmutableArray<ITypeSymbol> TypeArguments { get; }
Microsoft.CodeAnalysis.CodeStyle.Fixes (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
84public abstract ImmutableArray<ITypeSymbol> TypeArguments { get; }
Microsoft.CodeAnalysis.CSharp (1)
Symbols\PublicModel\NamedTypeSymbol.cs (1)
72ImmutableArray<ITypeSymbol> INamedTypeSymbol.TypeArguments
Microsoft.CodeAnalysis.Features (1)
MetadataAsSource\AbstractMetadataAsSourceService.WrappedNamedTypeSymbol.cs (1)
78public ImmutableArray<ITypeSymbol> TypeArguments => _symbol.TypeArguments;
Microsoft.CodeAnalysis.VisualBasic (1)
Symbols\NamedTypeSymbol.vb (1)
1377Private ReadOnly Property INamedTypeSymbol_TypeArguments As ImmutableArray(Of ITypeSymbol) Implements INamedTypeSymbol.TypeArguments
Microsoft.CodeAnalysis.Workspaces (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
84public abstract ImmutableArray<ITypeSymbol> TypeArguments { get; }
Roslyn.Diagnostics.Analyzers (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
84public abstract ImmutableArray<ITypeSymbol> TypeArguments { get; }
551 references to TypeArguments
Aspire.Hosting.Integration.Analyzers (19)
AspireExportAnalyzer.cs (19)
482return namedType.TypeArguments.Length == 1 && namedType.TypeArguments[0] is ITypeParameterSymbol; 509if (namedType.TypeArguments.Length == 1 && namedType.TypeArguments[0] is not ITypeParameterSymbol) 511return namedType.TypeArguments[0].Name; 901return namedType.TypeArguments.Length == 1 && 902IsAtsCompatibleValueType(namedType.TypeArguments[0], wellKnownTypes, aspireExportAttribute); 922namedType.TypeArguments.Length == 1) 924type = namedType.TypeArguments[0]; 1078return namedType.TypeArguments.Length == 2 && 1079IsAtsCompatibleValueType(namedType.TypeArguments[0], wellKnownTypes, aspireExportAttribute) && 1080IsAtsCompatibleValueType(namedType.TypeArguments[1], wellKnownTypes, aspireExportAttribute); 1087return namedType.TypeArguments.Length == 1 && 1088IsAtsCompatibleValueType(namedType.TypeArguments[0], wellKnownTypes, aspireExportAttribute); 1096return namedType.TypeArguments.Length == 1 && 1097IsAtsCompatibleValueType(namedType.TypeArguments[0], wellKnownTypes, aspireExportAttribute); 1103return namedType.TypeArguments.Length == 2 && 1104IsAtsCompatibleValueType(namedType.TypeArguments[0], wellKnownTypes, aspireExportAttribute) && 1105IsAtsCompatibleValueType(namedType.TypeArguments[1], wellKnownTypes, aspireExportAttribute);
ConfigurationSchemaGenerator (8)
RuntimeSource\Configuration.Binder\ConfigurationBindingGenerator.Parser.cs (6)
225underlyingType = genericType.TypeArguments[0]; 544type = ((INamedTypeSymbol)type).TypeArguments[0]; // extract the T from a Nullable<T> 759elementType = candidate.TypeArguments[0]; 773keyType = candidate.TypeArguments[0]; 774elementType = candidate.TypeArguments[1]; 839foreach (ITypeSymbol typeArg in genericType.TypeArguments)
RuntimeSource\SourceGenerators\TypeModelHelper.cs (2)
31if (!current.TypeArguments.IsEmpty) 33(args ??= new()).AddRange(current.TypeArguments);
GenerateDocumentationAndConfigFiles (34)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ITypeSymbolExtensions.cs (1)
263=> typeSymbol.IsNullableValueType() && ((INamedTypeSymbol)typeSymbol).TypeArguments[0].SpecialType == SpecialType.System_Boolean;
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\WellKnownTypeProvider.cs (2)
210&& namedTypeSymbol.TypeArguments.Length == 1 211&& typeArgumentPredicate(namedTypeSymbol.TypeArguments[0]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (3)
67elementType = namedType.TypeArguments.Single(); 76elementType = foundType?.TypeArguments.FirstOrDefault() ?? compilation.ObjectType; 170.Select(m => m.Arity == 0 ? m : m.Construct(ImmutableCollectionsMarshal.AsArray(collectionExpressionType.TypeArguments)!))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
47/// the "same" <see cref="INamedTypeSymbol.TypeArguments"/>.</item>
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ErrorTypeSymbolKey.cs (2)
40visitor.WriteSymbolKeyArray(symbol.TypeArguments); 74getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (2)
29symbol.Equals(symbol.ConstructedFrom) || symbol.IsUnboundGenericType ? [] : symbol.TypeArguments); 50getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
53return stack.SelectManyAsArray(n => n.TypeArguments); 706TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
456INamedTypeSymbol nt => nt.TypeArguments,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions_Accessibility.cs (1)
191foreach (var typeArg in type.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.AnonymousTypeRemover.cs (2)
47var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 48if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (4)
69underlyingType = ((INamedTypeSymbol)symbol).TypeArguments[0]; 424var typeArgument = ((INamedTypeSymbol)typeSymbol).TypeArguments[0]; 787TypeArguments.Length: 1, 795TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.MinimalAccessibilityVisitor.cs (1)
54foreach (var arg in symbol.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.SubstituteTypesVisitor.cs (2)
87var substitutedArguments = symbol.TypeArguments.Select(t => t.Accept(this)); 88if (symbol.TypeArguments.SequenceEqual(substitutedArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnavailableTypeParameterRemover.cs (2)
45var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 46if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnnamedErrorTypeRemover.cs (2)
49var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 50if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (3)
70return AreEquivalent(array.ElementType, readOnlySpanType.TypeArguments.Single(), equivalentTypesWithDifferingAssemblies); 415TypeArgumentsAreEquivalent(x.TypeArguments, y.TypeArguments, equivalentTypesWithDifferingAssemblies);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (1)
190: CombineHashCodes(x.TypeArguments, currentHash, _symbolAggregator);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
178? factory.GenericName(classOrStructType.Name, classOrStructType.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
106var parameters = type.TypeArguments;
ILLink.RoslynAnalyzer (4)
TrimAnalysis\GenericArgumentDataFlow.cs (2)
45ProcessGenericArgumentDataFlow(type.TypeArguments, type.TypeParameters); 98foreach (var typeArgument in type.TypeArguments)
TrimAnalysis\HandleCallAction.cs (1)
84foreach (var arg in symbol.TypeArguments)
TrimAnalysis\SingleValueExtensions.cs (1)
18var underlyingType = (type as INamedTypeSymbol)?.TypeArguments.FirstOrDefault();
Microsoft.Analyzers.Extra (3)
CallAnalysis\Arrays.cs (3)
107var keyType = type.TypeArguments[0]; 123if (type.TypeArguments.Length == 2) 125valueType = type.TypeArguments[1];
Microsoft.AspNetCore.App.Analyzers (10)
Http\RequestDelegateReturnTypeAnalyzer.cs (1)
81((INamedTypeSymbol)returnType).TypeArguments[0].ToString()));
RouteHandlers\DisallowNonParsableComplexTypesOnParameters.cs (2)
133parameterTypeSymbol.TypeArguments.Length > 0) 135parameterTypeSymbol = parameterTypeSymbol.TypeArguments[0] as INamedTypeSymbol;
RouteHandlers\DisallowReturningActionResultFromMapMethods.cs (2)
91if (returnType is not INamedTypeSymbol { Name: "Task" or "ValueTask", IsGenericType: true, TypeArguments: { Length: 1 } } taskLike) 96return taskLike.TypeArguments[0];
src\aspnetcore\src\Shared\RoslynUtils\ParsabilityHelper.cs (3)
131SymbolEqualityComparer.Default.Equals(constructedTypeSymbol.TypeArguments[0].UnwrapTypeSymbol(unwrapNullable: true), typeSymbol); 142SymbolEqualityComparer.Default.Equals(returnType.TypeArguments[0], typeSymbol); 159SymbolEqualityComparer.Default.Equals(returnType.TypeArguments[0].UnwrapTypeSymbol(unwrapNullable: true), containingType);
src\aspnetcore\src\Shared\RoslynUtils\SymbolExtensions.cs (2)
36unwrappedTypeSymbol = unwrappedTypeSymbol.TypeArguments[0] as INamedTypeSymbol; 320var underlyingType = namedType.TypeArguments.FirstOrDefault();
Microsoft.AspNetCore.OpenApi.SourceGenerators (1)
Helpers\ISymbolExtensions.cs (1)
91INamedTypeSymbol nt => nt.TypeArguments,
Microsoft.CodeAnalysis (7)
DiagnosticAnalyzer\SuppressMessageAttributeState.TargetSymbolResolver.cs (1)
566return TypeInfo.Create(containingType.TypeArguments[i]);
DocumentationCommentId.cs (3)
625else if (symbol.TypeArguments.Length > 0) 629for (int i = 0, n = symbol.TypeArguments.Length; i < n; i++) 636this.Visit(symbol.TypeArguments[i]);
Operations\ControlFlowGraphBuilder.cs (1)
3140((INamedTypeSymbol)operation.Target.Type!).TypeArguments[0].Equals(operation.Type))
Symbols\INamedTypeSymbol.cs (1)
92/// The modifiers correspond to the type argument at the same ordinal within the <see cref="TypeArguments"/>
Symbols\ITypeSymbol.cs (1)
233return ((INamedTypeSymbol)type).TypeArguments[0];
Microsoft.CodeAnalysis.Analyzers (39)
MetaAnalyzers\CompareSymbolsCorrectlyAnalyzer.cs (2)
266!createdType.TypeArguments.IsEmpty && 267IsSymbolType(createdType.TypeArguments[0], symbolType) &&
MetaAnalyzers\DiagnosticAnalyzerAPIUsageAnalyzer.cs (1)
275foreach (var typeArgument in usedType.TypeArguments)
src\roslyn\src\RoslynAnalyzers\Microsoft.CodeAnalysis.BannedApiAnalyzers\Core\SymbolIsBannedAnalyzerBase.cs (1)
389foreach (var typeArgument in namedTypeSymbol.TypeArguments)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
362foreach (var type in usedType.TypeArguments)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ITypeSymbolExtensions.cs (1)
263=> typeSymbol.IsNullableValueType() && ((INamedTypeSymbol)typeSymbol).TypeArguments[0].SpecialType == SpecialType.System_Boolean;
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\WellKnownTypeProvider.cs (2)
210&& namedTypeSymbol.TypeArguments.Length == 1 211&& typeArgumentPredicate(namedTypeSymbol.TypeArguments[0]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (3)
67elementType = namedType.TypeArguments.Single(); 76elementType = foundType?.TypeArguments.FirstOrDefault() ?? compilation.ObjectType; 170.Select(m => m.Arity == 0 ? m : m.Construct(ImmutableCollectionsMarshal.AsArray(collectionExpressionType.TypeArguments)!))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
47/// the "same" <see cref="INamedTypeSymbol.TypeArguments"/>.</item>
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ErrorTypeSymbolKey.cs (2)
40visitor.WriteSymbolKeyArray(symbol.TypeArguments); 74getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (2)
29symbol.Equals(symbol.ConstructedFrom) || symbol.IsUnboundGenericType ? [] : symbol.TypeArguments); 50getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
53return stack.SelectManyAsArray(n => n.TypeArguments); 706TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
456INamedTypeSymbol nt => nt.TypeArguments,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions_Accessibility.cs (1)
191foreach (var typeArg in type.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.AnonymousTypeRemover.cs (2)
47var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 48if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (4)
69underlyingType = ((INamedTypeSymbol)symbol).TypeArguments[0]; 424var typeArgument = ((INamedTypeSymbol)typeSymbol).TypeArguments[0]; 787TypeArguments.Length: 1, 795TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.MinimalAccessibilityVisitor.cs (1)
54foreach (var arg in symbol.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.SubstituteTypesVisitor.cs (2)
87var substitutedArguments = symbol.TypeArguments.Select(t => t.Accept(this)); 88if (symbol.TypeArguments.SequenceEqual(substitutedArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnavailableTypeParameterRemover.cs (2)
45var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 46if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnnamedErrorTypeRemover.cs (2)
49var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 50if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (3)
70return AreEquivalent(array.ElementType, readOnlySpanType.TypeArguments.Single(), equivalentTypesWithDifferingAssemblies); 415TypeArgumentsAreEquivalent(x.TypeArguments, y.TypeArguments, equivalentTypesWithDifferingAssemblies);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (1)
190: CombineHashCodes(x.TypeArguments, currentHash, _symbolAggregator);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
178? factory.GenericName(classOrStructType.Name, classOrStructType.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
106var parameters = type.TypeArguments;
Microsoft.CodeAnalysis.AnalyzerUtilities (33)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
362foreach (var type in usedType.TypeArguments)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ITypeSymbolExtensions.cs (1)
263=> typeSymbol.IsNullableValueType() && ((INamedTypeSymbol)typeSymbol).TypeArguments[0].SpecialType == SpecialType.System_Boolean;
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\WellKnownTypeProvider.cs (2)
210&& namedTypeSymbol.TypeArguments.Length == 1 211&& typeArgumentPredicate(namedTypeSymbol.TypeArguments[0]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (3)
67elementType = namedType.TypeArguments.Single(); 76elementType = foundType?.TypeArguments.FirstOrDefault() ?? compilation.ObjectType; 170.Select(m => m.Arity == 0 ? m : m.Construct(ImmutableCollectionsMarshal.AsArray(collectionExpressionType.TypeArguments)!))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
47/// the "same" <see cref="INamedTypeSymbol.TypeArguments"/>.</item>
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ErrorTypeSymbolKey.cs (2)
40visitor.WriteSymbolKeyArray(symbol.TypeArguments); 74getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (2)
29symbol.Equals(symbol.ConstructedFrom) || symbol.IsUnboundGenericType ? [] : symbol.TypeArguments); 50getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
53return stack.SelectManyAsArray(n => n.TypeArguments); 706TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
456INamedTypeSymbol nt => nt.TypeArguments,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions_Accessibility.cs (1)
191foreach (var typeArg in type.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.AnonymousTypeRemover.cs (2)
47var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 48if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (4)
69underlyingType = ((INamedTypeSymbol)symbol).TypeArguments[0]; 424var typeArgument = ((INamedTypeSymbol)typeSymbol).TypeArguments[0]; 787TypeArguments.Length: 1, 795TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.MinimalAccessibilityVisitor.cs (1)
54foreach (var arg in symbol.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.SubstituteTypesVisitor.cs (2)
87var substitutedArguments = symbol.TypeArguments.Select(t => t.Accept(this)); 88if (symbol.TypeArguments.SequenceEqual(substitutedArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnavailableTypeParameterRemover.cs (2)
45var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 46if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnnamedErrorTypeRemover.cs (2)
49var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 50if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (3)
70return AreEquivalent(array.ElementType, readOnlySpanType.TypeArguments.Single(), equivalentTypesWithDifferingAssemblies); 415TypeArgumentsAreEquivalent(x.TypeArguments, y.TypeArguments, equivalentTypesWithDifferingAssemblies);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (1)
190: CombineHashCodes(x.TypeArguments, currentHash, _symbolAggregator);
Microsoft.CodeAnalysis.CodeStyle (32)
src\roslyn\src\Analyzers\Core\Analyzers\ConvertTypeofToNameof\AbstractConvertTypeOfToNameOfDiagnosticAnalyzer.cs (1)
72return namedType.TypeArguments.Length == 0;
src\roslyn\src\Analyzers\Core\Analyzers\ForEachCast\AbstractForEachCastDiagnosticAnalyzer.cs (1)
103collectionElementType = ienumerableOfT.TypeArguments[0];
src\roslyn\src\Compilers\Core\Portable\DiagnosticAnalyzer\SuppressMessageAttributeState.TargetSymbolResolver.cs (1)
566return TypeInfo.Create(containingType.TypeArguments[i]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (3)
67elementType = namedType.TypeArguments.Single(); 76elementType = foundType?.TypeArguments.FirstOrDefault() ?? compilation.ObjectType; 170.Select(m => m.Arity == 0 ? m : m.Construct(ImmutableCollectionsMarshal.AsArray(collectionExpressionType.TypeArguments)!))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
47/// the "same" <see cref="INamedTypeSymbol.TypeArguments"/>.</item>
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ErrorTypeSymbolKey.cs (2)
40visitor.WriteSymbolKeyArray(symbol.TypeArguments); 74getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (2)
29symbol.Equals(symbol.ConstructedFrom) || symbol.IsUnboundGenericType ? [] : symbol.TypeArguments); 50getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
53return stack.SelectManyAsArray(n => n.TypeArguments); 706TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
456INamedTypeSymbol nt => nt.TypeArguments,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions_Accessibility.cs (1)
191foreach (var typeArg in type.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.AnonymousTypeRemover.cs (2)
47var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 48if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (4)
69underlyingType = ((INamedTypeSymbol)symbol).TypeArguments[0]; 424var typeArgument = ((INamedTypeSymbol)typeSymbol).TypeArguments[0]; 787TypeArguments.Length: 1, 795TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.MinimalAccessibilityVisitor.cs (1)
54foreach (var arg in symbol.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.SubstituteTypesVisitor.cs (2)
87var substitutedArguments = symbol.TypeArguments.Select(t => t.Accept(this)); 88if (symbol.TypeArguments.SequenceEqual(substitutedArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnavailableTypeParameterRemover.cs (2)
45var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 46if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnnamedErrorTypeRemover.cs (2)
49var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 50if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (3)
70return AreEquivalent(array.ElementType, readOnlySpanType.TypeArguments.Single(), equivalentTypesWithDifferingAssemblies); 415TypeArgumentsAreEquivalent(x.TypeArguments, y.TypeArguments, equivalentTypesWithDifferingAssemblies);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (1)
190: CombineHashCodes(x.TypeArguments, currentHash, _symbolAggregator);
Microsoft.CodeAnalysis.CodeStyle.Fixes (4)
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateParameterizedMember\TypeParameterSubstitution.cs (1)
50foreach (var typeArg in symbol.TypeArguments)
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementHelpers.cs (1)
201foreach (var genericParam in namedType.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
178? factory.GenericName(classOrStructType.Name, classOrStructType.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
106var parameters = type.TypeArguments;
Microsoft.CodeAnalysis.CSharp (4)
SymbolDisplay\SymbolDisplayVisitor.Types.cs (4)
230var typeArg = symbol.TypeArguments[0]; 442AddTypeParameterConstraints(symbol.TypeArguments); 544tupleSymbol = (INamedTypeSymbol)currentUnderlying.TypeArguments[NamedTypeSymbol.ValueTupleRestPosition - 1]; 835typeArguments = ((INamedTypeSymbol)owner).TypeArguments;
Microsoft.CodeAnalysis.CSharp.CodeStyle (9)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\CSharpUseCollectionExpressionForArrayDiagnosticAnalyzer.cs (1)
109semanticModel.Compilation, ienumerableType.TypeArguments.Single()))
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (2)
950TypeArguments: [ITypeParameterSymbol { TypeParameterKind: TypeParameterKind.Method }] 997TypeArguments: [ITypeParameterSymbol { TypeParameterKind: TypeParameterKind.Method }]
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\CodeStyle\TypeStyle\TypeStyleHelper.cs (1)
156containingType.TypeArguments.Length == 0 &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
1049return iface.TypeArguments.Single();
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (4)
661if (namedCastedType.TypeArguments.Length != 1 && originalNamedConvertedType.TypeArguments.Length != 1) 664if (!originalNamedConvertedType.TypeArguments[0].Equals(namedCastedType.TypeArguments[0], SymbolEqualityComparer.IncludeNullability))
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (15)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseUtf8StringLiteral\UseUtf8StringLiteralCodeFixProvider.cs (1)
66namedType.TypeArguments[0].SpecialType == SpecialType.System_Byte;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (3)
204? Enumerable.Repeat((TypeSyntax)OmittedTypeArgument(), symbol.TypeArguments.Length) 205: symbol.TypeArguments.SelectAsArray(t => t.GenerateTypeSyntax()); 233var innerType = symbol.TypeArguments.First();
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\WithElementSyntaxExtensions.cs (1)
55var constructedListType = listOfTType.Construct(collectionExpressionType.TypeArguments.Single());
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (10)
710if (inferredNamedType.TypeArguments.Length == returnNamedType.TypeArguments.Length) 712for (int i = 0, n = inferredNamedType.TypeArguments.Length; i < n; i++) 714DetermineTypeParameterMapping(inferredNamedType.TypeArguments[i], returnNamedType.TypeArguments[i], result); 1841var typeArg = delegateType?.TypeArguments.Length > 0 1842? delegateType.TypeArguments[0] 2072return memberType is INamedTypeSymbol namedType && namedType.TypeArguments.Length == 1 2073? [new TypeInferenceInfo(namedType.TypeArguments[0])] 2087return namedTypeSymbol.TypeArguments[0];
Microsoft.CodeAnalysis.CSharp.Features (11)
Completion\CompletionProviders\CSharpSuggestionModeCompletionProvider.cs (1)
201typeSymbol = ienumerableType.TypeArguments.Single();
Completion\CompletionProviders\DeclarationName\DeclarationNameRecommender.cs (4)
78if (originalType is INamedTypeSymbol { Name: "Func", ContainingNamespace.Name: "System", TypeArguments: [.., var returnType] }) 145if (type is IErrorTypeSymbol { TypeArguments: [var typeArgument] } && 165Equals(t.OriginalDefinition, compilation.IAsyncEnumerableOfTType()))?.TypeArguments[0]; 190return UnwrapType(namedType.TypeArguments[0], compilation, wasPlural: wasPlural, seenTypes: seenTypes);
QuickInfo\CSharpSemanticQuickInfoProvider.cs (1)
177builder.AddRange(type.TypeArguments);
SignatureHelp\AbstractGenericNameSignatureHelpProvider.cs (1)
168result.AddRange(method.ContainingType.TypeArguments.Select(t => new SignatureHelpSymbolParameter(
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\CSharpUseCollectionExpressionForArrayDiagnosticAnalyzer.cs (1)
109semanticModel.Compilation, ienumerableType.TypeArguments.Single()))
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (2)
950TypeArguments: [ITypeParameterSymbol { TypeParameterKind: TypeParameterKind.Method }] 997TypeArguments: [ITypeParameterSymbol { TypeParameterKind: TypeParameterKind.Method }]
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseUtf8StringLiteral\UseUtf8StringLiteralCodeFixProvider.cs (1)
66namedType.TypeArguments[0].SpecialType == SpecialType.System_Byte;
Microsoft.CodeAnalysis.CSharp.NetAnalyzers (4)
Microsoft.CodeQuality.Analyzers\Maintainability\CSharpAvoidUninstantiatedInternalClasses.cs (1)
29var generics = namedTypeSymbol.TypeParameters.Zip(namedTypeSymbol.TypeArguments, (parameter, argument) => (parameter, argument));
Microsoft.NetCore.Analyzers\Performance\CSharpUseSearchValues.Fixer.cs (1)
93if (namedType.TypeArguments is [var typeArgument])
Microsoft.NetCore.Analyzers\Runtime\CSharpForwardCancellationTokenToInvocationsFixer.TypeNameVisitor.cs (2)
142? Enumerable.Repeat((TypeSyntax)OmittedTypeArgument(), symbol.TypeArguments.Length) 143: symbol.TypeArguments.Select(GetTypeSyntaxForSymbol);
Microsoft.CodeAnalysis.CSharp.Workspaces (24)
Simplification\CSharpSimplificationService.Expander.cs (2)
836if (namedTypedSymbol.TypeArguments.Length != 0) 838foreach (var typeArgument in namedTypedSymbol.TypeArguments)
Simplification\Simplifiers\ExpressionSimplifier.cs (1)
424if (rightSymbol.ContainingType is { TypeArguments.Length: 0 } containingType &&
Simplification\Simplifiers\NameSimplifier.cs (1)
442var argument = type.TypeArguments.SingleOrDefault();
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\CodeStyle\TypeStyle\TypeStyleHelper.cs (1)
156containingType.TypeArguments.Length == 0 &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
1049return iface.TypeArguments.Single();
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (4)
661if (namedCastedType.TypeArguments.Length != 1 && originalNamedConvertedType.TypeArguments.Length != 1) 664if (!originalNamedConvertedType.TypeArguments[0].Equals(namedCastedType.TypeArguments[0], SymbolEqualityComparer.IncludeNullability))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (3)
204? Enumerable.Repeat((TypeSyntax)OmittedTypeArgument(), symbol.TypeArguments.Length) 205: symbol.TypeArguments.SelectAsArray(t => t.GenerateTypeSyntax()); 233var innerType = symbol.TypeArguments.First();
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\WithElementSyntaxExtensions.cs (1)
55var constructedListType = listOfTType.Construct(collectionExpressionType.TypeArguments.Single());
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (10)
710if (inferredNamedType.TypeArguments.Length == returnNamedType.TypeArguments.Length) 712for (int i = 0, n = inferredNamedType.TypeArguments.Length; i < n; i++) 714DetermineTypeParameterMapping(inferredNamedType.TypeArguments[i], returnNamedType.TypeArguments[i], result); 1841var typeArg = delegateType?.TypeArguments.Length > 0 1842? delegateType.TypeArguments[0] 2072return memberType is INamedTypeSymbol namedType && namedType.TypeArguments.Length == 1 2073? [new TypeInferenceInfo(namedType.TypeArguments[0])] 2087return namedTypeSymbol.TypeArguments[0];
Microsoft.CodeAnalysis.Extensions.Package (21)
Symbols\INamedTypeSymbolExtensions.cs (2)
53return stack.SelectManyAsArray(n => n.TypeArguments); 706TypeArguments.Length: 1,
Symbols\ISymbolExtensions.cs (1)
456INamedTypeSymbol nt => nt.TypeArguments,
Symbols\ISymbolExtensions_Accessibility.cs (1)
191foreach (var typeArg in type.TypeArguments)
Symbols\ITypeSymbolExtensions.AnonymousTypeRemover.cs (2)
47var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 48if (arguments.SequenceEqual(symbol.TypeArguments))
Symbols\ITypeSymbolExtensions.cs (4)
69underlyingType = ((INamedTypeSymbol)symbol).TypeArguments[0]; 424var typeArgument = ((INamedTypeSymbol)typeSymbol).TypeArguments[0]; 787TypeArguments.Length: 1, 795TypeArguments.Length: 1,
Symbols\ITypeSymbolExtensions.MinimalAccessibilityVisitor.cs (1)
54foreach (var arg in symbol.TypeArguments)
Symbols\ITypeSymbolExtensions.SubstituteTypesVisitor.cs (2)
87var substitutedArguments = symbol.TypeArguments.Select(t => t.Accept(this)); 88if (symbol.TypeArguments.SequenceEqual(substitutedArguments))
Symbols\ITypeSymbolExtensions.UnavailableTypeParameterRemover.cs (2)
45var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 46if (arguments.SequenceEqual(symbol.TypeArguments))
Symbols\ITypeSymbolExtensions.UnnamedErrorTypeRemover.cs (2)
49var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 50if (arguments.SequenceEqual(symbol.TypeArguments))
Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (3)
70return AreEquivalent(array.ElementType, readOnlySpanType.TypeArguments.Single(), equivalentTypesWithDifferingAssemblies); 415TypeArgumentsAreEquivalent(x.TypeArguments, y.TypeArguments, equivalentTypesWithDifferingAssemblies);
Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (1)
190: CombineHashCodes(x.TypeArguments, currentHash, _symbolAggregator);
Microsoft.CodeAnalysis.Features (16)
ConvertForToForEach\AbstractConvertForToForEachCodeRefactoringProvider.cs (3)
274iterationType = instantiatedIEnumerableType.TypeArguments[0]; 303iterationType = instantiatedIEnumeratorType.TypeArguments[0]; 529return interfaceType.TypeArguments[0];
Debugging\AbstractBreakpointResolver.cs (1)
166(nameAndArity.Arity == 0 || nameAndArity.Arity == typeSymbol.TypeArguments.Length);
FullyQualify\AbstractFullyQualifyService.cs (1)
238if (looksGeneric && searchResult.TypeArguments.Length == 0)
GenerateComparisonOperators\GenerateComparisonOperatorsCodeRefactoringProvider.cs (3)
75var comparedType = iface.TypeArguments[0]; 106var typeArg = missingType.TypeArguments[0]; 182var comparedType = comparableType.TypeArguments[0];
MetadataAsSource\AbstractMetadataAsSourceService.WrappedNamedTypeSymbol.cs (1)
78public ImmutableArray<ITypeSymbol> TypeArguments => _symbol.TypeArguments;
QuickInfo\CommonSemanticQuickInfoProvider.ErrorVisitor.cs (1)
61foreach (var typeParameter in symbol.TypeArguments.Concat(symbol.TypeParameters))
RQName\RQNodeBuilder.cs (1)
324foreach (var typeArgument in entry.TypeArguments)
src\roslyn\src\Analyzers\Core\Analyzers\ConvertTypeofToNameof\AbstractConvertTypeOfToNameOfDiagnosticAnalyzer.cs (1)
72return namedType.TypeArguments.Length == 0;
src\roslyn\src\Analyzers\Core\Analyzers\ForEachCast\AbstractForEachCastDiagnosticAnalyzer.cs (1)
103collectionElementType = ienumerableOfT.TypeArguments[0];
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateParameterizedMember\TypeParameterSubstitution.cs (1)
50foreach (var typeArg in symbol.TypeArguments)
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementHelpers.cs (1)
201foreach (var genericParam in namedType.TypeArguments)
src\roslyn\src\Compilers\Core\Portable\DiagnosticAnalyzer\SuppressMessageAttributeState.TargetSymbolResolver.cs (1)
566return TypeInfo.Create(containingType.TypeArguments[i]);
Microsoft.CodeAnalysis.Razor.Compiler (10)
CSharp\DefaultTagHelperDescriptorFactory.cs (2)
305return propertyType.TypeArguments; 311var result = dictionaryType?.TypeArguments ?? [];
Language\TagHelpers\Producers\ComponentTagHelperProducer.cs (2)
145foreach (var typeArgument in type.TypeArguments) 263foreach (var typeArgument in namedType.TypeArguments)
Mvc.Version1_X\ViewComponentTagHelperDescriptorFactory.cs (2)
228if (dictionaryType == null || dictionaryType.TypeArguments[0].SpecialType != SpecialType.System_String) 233var type = dictionaryType.TypeArguments[1];
Mvc.Version2_X\ViewComponentTagHelperDescriptorFactory.cs (2)
243if (dictionaryType == null || dictionaryType.TypeArguments[0].SpecialType != SpecialType.System_String) 248var type = dictionaryType.TypeArguments[1];
Mvc\ViewComponentTagHelperDescriptorFactory.cs (2)
246if (dictionaryType == null || dictionaryType.TypeArguments[0].SpecialType != SpecialType.System_String) 251var type = dictionaryType.TypeArguments[1];
Microsoft.CodeAnalysis.ResxSourceGenerator (33)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
362foreach (var type in usedType.TypeArguments)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ITypeSymbolExtensions.cs (1)
263=> typeSymbol.IsNullableValueType() && ((INamedTypeSymbol)typeSymbol).TypeArguments[0].SpecialType == SpecialType.System_Boolean;
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\WellKnownTypeProvider.cs (2)
210&& namedTypeSymbol.TypeArguments.Length == 1 211&& typeArgumentPredicate(namedTypeSymbol.TypeArguments[0]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (3)
67elementType = namedType.TypeArguments.Single(); 76elementType = foundType?.TypeArguments.FirstOrDefault() ?? compilation.ObjectType; 170.Select(m => m.Arity == 0 ? m : m.Construct(ImmutableCollectionsMarshal.AsArray(collectionExpressionType.TypeArguments)!))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
47/// the "same" <see cref="INamedTypeSymbol.TypeArguments"/>.</item>
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ErrorTypeSymbolKey.cs (2)
40visitor.WriteSymbolKeyArray(symbol.TypeArguments); 74getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (2)
29symbol.Equals(symbol.ConstructedFrom) || symbol.IsUnboundGenericType ? [] : symbol.TypeArguments); 50getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
53return stack.SelectManyAsArray(n => n.TypeArguments); 706TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
456INamedTypeSymbol nt => nt.TypeArguments,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions_Accessibility.cs (1)
191foreach (var typeArg in type.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.AnonymousTypeRemover.cs (2)
47var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 48if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (4)
69underlyingType = ((INamedTypeSymbol)symbol).TypeArguments[0]; 424var typeArgument = ((INamedTypeSymbol)typeSymbol).TypeArguments[0]; 787TypeArguments.Length: 1, 795TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.MinimalAccessibilityVisitor.cs (1)
54foreach (var arg in symbol.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.SubstituteTypesVisitor.cs (2)
87var substitutedArguments = symbol.TypeArguments.Select(t => t.Accept(this)); 88if (symbol.TypeArguments.SequenceEqual(substitutedArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnavailableTypeParameterRemover.cs (2)
45var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 46if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnnamedErrorTypeRemover.cs (2)
49var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 50if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (3)
70return AreEquivalent(array.ElementType, readOnlySpanType.TypeArguments.Single(), equivalentTypesWithDifferingAssemblies); 415TypeArgumentsAreEquivalent(x.TypeArguments, y.TypeArguments, equivalentTypesWithDifferingAssemblies);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (1)
190: CombineHashCodes(x.TypeArguments, currentHash, _symbolAggregator);
Microsoft.CodeAnalysis.VisualBasic (4)
SymbolDisplay\SymbolDisplayVisitor.Types.vb (3)
101symbol.TypeArguments(0).Accept(Me.NotFirstVisitor()) 304AddTypeArguments(symbol.TypeArguments, symbol) 361tupleSymbol = DirectCast(currentUnderlying.TypeArguments(TupleTypeSymbol.RestPosition - 1), INamedTypeSymbol)
Symbols\NamedTypeSymbol.vb (1)
1377Private ReadOnly Property INamedTypeSymbol_TypeArguments As ImmutableArray(Of ITypeSymbol) Implements INamedTypeSymbol.TypeArguments
Microsoft.CodeAnalysis.VisualBasic.CodeStyle.Fixes (5)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\ExpressionGenerator.vb (1)
48Return GenerateExpression(generator, DirectCast(type, INamedTypeSymbol).TypeArguments(0), value, canUseFieldReference)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\TypeSyntaxGeneratorVisitor.vb (2)
82Return AddInformationTo(SyntaxFactory.NullableType(symbol.TypeArguments.First().Accept(Me)), symbol) 91SyntaxFactory.TypeArgumentList(SyntaxFactory.SeparatedList(symbol.TypeArguments.[Select](Function(t) t.Accept(Me)))))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (2)
512Return New TypeInferenceInfo(DirectCast(t.InferredType, INamedTypeSymbol).TypeArguments(0)) 776Return CreateResult(DirectCast(memberType, INamedTypeSymbol).TypeArguments(0))
Microsoft.CodeAnalysis.VisualBasic.NetAnalyzers (3)
Microsoft.NetCore.Analyzers\Performance\BasicPreferDictionaryTryMethodsOverContainsKeyGuardFixer.vb (1)
233Return type.TypeArguments(1)
Microsoft.NetCore.Analyzers\Runtime\BasicForwardCancellationTokenToInvocationsFixer.TypeNameVisitor.vb (2)
118Return AddInformationTo(SyntaxFactory.NullableType(symbol.TypeArguments.First().Accept(New TypeNameVisitor()))) 127SyntaxFactory.TypeArgumentList(SyntaxFactory.SeparatedList(symbol.TypeArguments.[Select](Function(t) t.Accept(New TypeNameVisitor())))))
Microsoft.CodeAnalysis.VisualBasic.Workspaces (7)
Simplification\Simplifiers\ExpressionSimplifier.vb (1)
254containingType.TypeArguments.Length <> 0 Then
Simplification\Simplifiers\NameSimplifier.vb (1)
445Dim argument = type.TypeArguments.SingleOrDefault()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\ExpressionGenerator.vb (1)
48Return GenerateExpression(generator, DirectCast(type, INamedTypeSymbol).TypeArguments(0), value, canUseFieldReference)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\TypeSyntaxGeneratorVisitor.vb (2)
82Return AddInformationTo(SyntaxFactory.NullableType(symbol.TypeArguments.First().Accept(Me)), symbol) 91SyntaxFactory.TypeArgumentList(SyntaxFactory.SeparatedList(symbol.TypeArguments.[Select](Function(t) t.Accept(Me)))))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (2)
512Return New TypeInferenceInfo(DirectCast(t.InferredType, INamedTypeSymbol).TypeArguments(0)) 776Return CreateResult(DirectCast(memberType, INamedTypeSymbol).TypeArguments(0))
Microsoft.CodeAnalysis.Workspaces (32)
ObsoleteSymbol\AbstractObsoleteSymbolService.cs (1)
200if (symbol is INamedTypeSymbol { OriginalDefinition.SpecialType: SpecialType.System_Nullable_T, TypeArguments: [var valueType] })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (3)
67elementType = namedType.TypeArguments.Single(); 76elementType = foundType?.TypeArguments.FirstOrDefault() ?? compilation.ObjectType; 170.Select(m => m.Arity == 0 ? m : m.Construct(ImmutableCollectionsMarshal.AsArray(collectionExpressionType.TypeArguments)!))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
47/// the "same" <see cref="INamedTypeSymbol.TypeArguments"/>.</item>
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ErrorTypeSymbolKey.cs (2)
40visitor.WriteSymbolKeyArray(symbol.TypeArguments); 74getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (2)
29symbol.Equals(symbol.ConstructedFrom) || symbol.IsUnboundGenericType ? [] : symbol.TypeArguments); 50getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
53return stack.SelectManyAsArray(n => n.TypeArguments); 706TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
456INamedTypeSymbol nt => nt.TypeArguments,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions_Accessibility.cs (1)
191foreach (var typeArg in type.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.AnonymousTypeRemover.cs (2)
47var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 48if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (4)
69underlyingType = ((INamedTypeSymbol)symbol).TypeArguments[0]; 424var typeArgument = ((INamedTypeSymbol)typeSymbol).TypeArguments[0]; 787TypeArguments.Length: 1, 795TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.MinimalAccessibilityVisitor.cs (1)
54foreach (var arg in symbol.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.SubstituteTypesVisitor.cs (2)
87var substitutedArguments = symbol.TypeArguments.Select(t => t.Accept(this)); 88if (symbol.TypeArguments.SequenceEqual(substitutedArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnavailableTypeParameterRemover.cs (2)
45var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 46if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnnamedErrorTypeRemover.cs (2)
49var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 50if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (3)
70return AreEquivalent(array.ElementType, readOnlySpanType.TypeArguments.Single(), equivalentTypesWithDifferingAssemblies); 415TypeArgumentsAreEquivalent(x.TypeArguments, y.TypeArguments, equivalentTypesWithDifferingAssemblies);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (1)
190: CombineHashCodes(x.TypeArguments, currentHash, _symbolAggregator);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
178? factory.GenericName(classOrStructType.Name, classOrStructType.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
106var parameters = type.TypeArguments;
Microsoft.Extensions.Options.SourceGeneration (10)
Parser.cs (9)
216foreach (var ta in mt.TypeArguments) 245type = ((INamedTypeSymbol)type).TypeArguments[0]; 251return ((INamedTypeSymbol)type).TypeArguments[0]; 259return implementingInterface.TypeArguments.First(); 273modelType = ((INamedTypeSymbol)modelType).TypeArguments[0]; 639typeSymbol = ((INamedTypeSymbol)typeSymbol).TypeArguments[0]; 690mt = ((INamedTypeSymbol)mt).TypeArguments[0]; 754result.Add(implementingInterface.TypeArguments.First()); 767var t = implementingInterface.TypeArguments.First();
ParserUtilities.cs (1)
78type = ((INamedTypeSymbol)type).TypeArguments[0]; // extract the T from a Nullable<T>
Microsoft.Gen.Logging (7)
Parsing\Parser.cs (1)
568extractedType = ((INamedTypeSymbol)paramTypeSymbol).TypeArguments[0];
Parsing\Parser.LogProperties.cs (4)
45paramTypeSymbol = ((INamedTypeSymbol)paramTypeSymbol).TypeArguments[0]; 186extractedType = ((INamedTypeSymbol)extractedType).TypeArguments[0]; 273extractedType = ((INamedTypeSymbol)extractedType).TypeArguments[0]; 343symType = ((INamedTypeSymbol)symType).TypeArguments[0];
Parsing\Parser.Records.cs (1)
129extractedType = ((INamedTypeSymbol)memberType).TypeArguments[0];
Parsing\TypeSymbolExtensions.cs (1)
97return namedTypeSymbol.TypeArguments[0];
Microsoft.Gen.MetadataExtractor (2)
src\Generators\Microsoft.Gen.Metrics\Parser.cs (2)
214=> symbol.TypeArguments.IsDefaultOrEmpty 216: symbol.TypeArguments[0];
Microsoft.Gen.Metrics (2)
Parser.cs (2)
214=> symbol.TypeArguments.IsDefaultOrEmpty 216: symbol.TypeArguments[0];
Microsoft.Gen.MetricsReports (2)
src\Generators\Microsoft.Gen.Metrics\Parser.cs (2)
214=> symbol.TypeArguments.IsDefaultOrEmpty 216: symbol.TypeArguments[0];
Microsoft.Interop.ComInterfaceGenerator (1)
VtableIndexStubGenerator.cs (1)
366var unwrapperSyntax = ParseTypeName(unmanagedObjectUnwrapper.AttributeClass.TypeArguments[0].ToDisplayString());
Microsoft.Interop.JavaScript.JSImportGenerator (11)
JSManagedTypeInfo.cs (9)
103if (CreateJSTypeInfoForTypeSymbol(nullable.TypeArguments[0]) is JSSimpleTypeInfo uti) 120case INamedTypeSymbol { TypeArguments.Length: 1 } taskType when fullTypeName.StartsWith(Constants.TaskGlobal, StringComparison.Ordinal): 121if (CreateJSTypeInfoForTypeSymbol(taskType.TypeArguments[0]) is JSSimpleTypeInfo rti) 128case INamedTypeSymbol { TypeArguments.Length: 1 } spanType when fullTypeName.StartsWith(Constants.SpanGlobal, StringComparison.Ordinal): 129if (CreateJSTypeInfoForTypeSymbol(spanType.TypeArguments[0]) is JSSimpleTypeInfo sti) 136case INamedTypeSymbol { TypeArguments.Length: 1 } arraySegmentType when fullTypeName.StartsWith(Constants.ArraySegmentGlobal, StringComparison.Ordinal): 137if (CreateJSTypeInfoForTypeSymbol(arraySegmentType.TypeArguments[0]) is JSSimpleTypeInfo gti) 147var argumentTypes = actionType.TypeArguments 158var signatureTypes = funcType.TypeArguments
JSMarshalAsAttributeInfoParser.cs (2)
26INamedTypeSymbol? jsTypeArgs = attributeData.AttributeClass.TypeArguments[0] as INamedTypeSymbol; 35foreach (var ta in jsTypeArgs.TypeArguments.Cast<INamedTypeSymbol>().Select(x => x.ToDisplayString()))
Microsoft.Interop.LibraryImportGenerator (6)
Analyzers\CustomMarshallerAttributeAnalyzer.cs (2)
992allocatedBufferType.TypeArguments[0].ToDisplayString()); 1000elementType = ((INamedTypeSymbol)spanTypeMaybe).TypeArguments[0];
Analyzers\CustomMarshallerAttributeFixer.cs (4)
389return ((INamedTypeSymbol)methods.ManagedValuesSource.ReturnType).TypeArguments[0]; 393return ((INamedTypeSymbol)methods.ManagedValuesDestination.ReturnType).TypeArguments[0]; 556return ((INamedTypeSymbol)methods.ManagedValuesSource.ReturnType).TypeArguments[0]; 560return ((INamedTypeSymbol)methods.ManagedValuesDestination.ReturnType).TypeArguments[0];
Microsoft.Interop.SourceGeneration (13)
ArrayMarshallingInfoProvider.cs (1)
70arrayMarshaller.TypeArguments.Last());
CustomMarshallingInfoHelper.cs (1)
56entryPointType.TypeArguments.Last());
ManualTypeMarshallingHelper.cs (7)
383ITypeSymbol resultType = entryType.TypeArguments[0]; 467collectionElementType = ((INamedTypeSymbol)methods.ManagedValuesSource.ReturnType).TypeArguments[0]; 498collectionElementType = ((INamedTypeSymbol)methods.ManagedValuesDestination.ReturnType).TypeArguments[0]; 525bufferElementType = ManagedTypeInfo.CreateTypeInfoForTypeSymbol(((INamedTypeSymbol)methods.ToUnmanagedWithBuffer.Parameters[1].Type).TypeArguments[0]); 573collectionElementType = ((INamedTypeSymbol)methods.ManagedValuesSource.ReturnType).TypeArguments[0]; 591collectionElementType = ((INamedTypeSymbol)methods.ManagedValuesDestination.ReturnType).TypeArguments[0]; 605bufferElementType = ManagedTypeInfo.CreateTypeInfoForTypeSymbol(((INamedTypeSymbol)methods.FromManagedWithBuffer.Parameters[1].Type).TypeArguments[0]);
MarshallerShape.cs (3)
228if (!SymbolEqualityComparer.Default.Equals(spanOfT, namedType.ConstructedFrom) || namedType.TypeArguments.Length != 1) 231ITypeSymbol typeArgument = namedType.TypeArguments[0]; 242&& SymbolEqualityComparer.Default.Equals(currentType.TypeArguments[i], typeArgument))
TypeSymbolExtensions.cs (1)
312genericTypesToSubstitute.Push((instantiatedType.TypeArguments, instantiatedType.TypeArgumentNullableAnnotations));
Microsoft.Maui.Controls.BindingSourceGen (1)
ITypeSymbolExtensions.cs (1)
41 return ((INamedTypeSymbol)typeSymbol).TypeArguments[0].ToDisplayString(SymbolDisplayFormat.FullyQualifiedFormat);
Roslyn.Diagnostics.Analyzers (36)
AbstractDoNotCopyValue.cs (1)
1566var nullableUnderlyingType = ((INamedTypeSymbol)type).TypeArguments.FirstOrDefault();
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
362foreach (var type in usedType.TypeArguments)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ITypeSymbolExtensions.cs (1)
263=> typeSymbol.IsNullableValueType() && ((INamedTypeSymbol)typeSymbol).TypeArguments[0].SpecialType == SpecialType.System_Boolean;
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\WellKnownTypeProvider.cs (2)
210&& namedTypeSymbol.TypeArguments.Length == 1 211&& typeArgumentPredicate(namedTypeSymbol.TypeArguments[0]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (3)
67elementType = namedType.TypeArguments.Single(); 76elementType = foundType?.TypeArguments.FirstOrDefault() ?? compilation.ObjectType; 170.Select(m => m.Arity == 0 ? m : m.Construct(ImmutableCollectionsMarshal.AsArray(collectionExpressionType.TypeArguments)!))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
47/// the "same" <see cref="INamedTypeSymbol.TypeArguments"/>.</item>
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ErrorTypeSymbolKey.cs (2)
40visitor.WriteSymbolKeyArray(symbol.TypeArguments); 74getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (2)
29symbol.Equals(symbol.ConstructedFrom) || symbol.IsUnboundGenericType ? [] : symbol.TypeArguments); 50getContextualSymbol: static (contextualType, i) => SafeGet(contextualType.TypeArguments, i),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
53return stack.SelectManyAsArray(n => n.TypeArguments); 706TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
456INamedTypeSymbol nt => nt.TypeArguments,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions_Accessibility.cs (1)
191foreach (var typeArg in type.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.AnonymousTypeRemover.cs (2)
47var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 48if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (4)
69underlyingType = ((INamedTypeSymbol)symbol).TypeArguments[0]; 424var typeArgument = ((INamedTypeSymbol)typeSymbol).TypeArguments[0]; 787TypeArguments.Length: 1, 795TypeArguments.Length: 1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.MinimalAccessibilityVisitor.cs (1)
54foreach (var arg in symbol.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.SubstituteTypesVisitor.cs (2)
87var substitutedArguments = symbol.TypeArguments.Select(t => t.Accept(this)); 88if (symbol.TypeArguments.SequenceEqual(substitutedArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnavailableTypeParameterRemover.cs (2)
45var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 46if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.UnnamedErrorTypeRemover.cs (2)
49var arguments = symbol.TypeArguments.Select(t => t.Accept(this)).ToArray(); 50if (arguments.SequenceEqual(symbol.TypeArguments))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (3)
70return AreEquivalent(array.ElementType, readOnlySpanType.TypeArguments.Single(), equivalentTypesWithDifferingAssemblies); 415TypeArgumentsAreEquivalent(x.TypeArguments, y.TypeArguments, equivalentTypesWithDifferingAssemblies);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (1)
190: CombineHashCodes(x.TypeArguments, currentHash, _symbolAggregator);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
178? factory.GenericName(classOrStructType.Name, classOrStructType.TypeArguments)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
106var parameters = type.TypeArguments;
Roslyn.Diagnostics.CSharp.Analyzers (20)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\CodeStyle\TypeStyle\TypeStyleHelper.cs (1)
156containingType.TypeArguments.Length == 0 &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
1049return iface.TypeArguments.Single();
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (4)
661if (namedCastedType.TypeArguments.Length != 1 && originalNamedConvertedType.TypeArguments.Length != 1) 664if (!originalNamedConvertedType.TypeArguments[0].Equals(namedCastedType.TypeArguments[0], SymbolEqualityComparer.IncludeNullability))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (3)
204? Enumerable.Repeat((TypeSyntax)OmittedTypeArgument(), symbol.TypeArguments.Length) 205: symbol.TypeArguments.SelectAsArray(t => t.GenerateTypeSyntax()); 233var innerType = symbol.TypeArguments.First();
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\WithElementSyntaxExtensions.cs (1)
55var constructedListType = listOfTType.Construct(collectionExpressionType.TypeArguments.Single());
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (10)
710if (inferredNamedType.TypeArguments.Length == returnNamedType.TypeArguments.Length) 712for (int i = 0, n = inferredNamedType.TypeArguments.Length; i < n; i++) 714DetermineTypeParameterMapping(inferredNamedType.TypeArguments[i], returnNamedType.TypeArguments[i], result); 1841var typeArg = delegateType?.TypeArguments.Length > 0 1842? delegateType.TypeArguments[0] 2072return memberType is INamedTypeSymbol namedType && namedType.TypeArguments.Length == 1 2073? [new TypeInferenceInfo(namedType.TypeArguments[0])] 2087return namedTypeSymbol.TypeArguments[0];
Roslyn.Diagnostics.VisualBasic.Analyzers (5)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\ExpressionGenerator.vb (1)
48Return GenerateExpression(generator, DirectCast(type, INamedTypeSymbol).TypeArguments(0), value, canUseFieldReference)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\TypeSyntaxGeneratorVisitor.vb (2)
82Return AddInformationTo(SyntaxFactory.NullableType(symbol.TypeArguments.First().Accept(Me)), symbol) 91SyntaxFactory.TypeArgumentList(SyntaxFactory.SeparatedList(symbol.TypeArguments.[Select](Function(t) t.Accept(Me)))))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (2)
512Return New TypeInferenceInfo(DirectCast(t.InferredType, INamedTypeSymbol).TypeArguments(0)) 776Return CreateResult(DirectCast(memberType, INamedTypeSymbol).TypeArguments(0))
System.Text.Json.SourceGeneration (41)
Helpers\RoslynExtensions.cs (2)
81ImmutableArray<ITypeSymbol> typeArguments = namedType.TypeArguments; 205elementType = ((INamedTypeSymbol)type).TypeArguments[0];
JsonSourceGenerator.Parser.cs (37)
1125caseType = nullableType.TypeArguments[0]; 1274type = nullable.TypeArguments[0]; 1375named.TypeArguments.Length == 1 && 1376named.TypeArguments[0].SpecialType == SpecialType.System_Byte && 1381named.TypeArguments.Length == 1 && 1382named.TypeArguments[0].SpecialType == SpecialType.System_Byte && 1444valueType = ((INamedTypeSymbol)type).TypeArguments[0]; 1452valueType = ((INamedTypeSymbol)type).TypeArguments[0]; 1460valueType = iAsyncEnumerableType.TypeArguments[0]; 1480valueType = actualTypeToConvert.TypeArguments[1]; 1485valueType = actualTypeToConvert.TypeArguments[0]; 1490keyType = actualTypeToConvert.TypeArguments[0]; 1491valueType = actualTypeToConvert.TypeArguments[1]; 1496ImmutableArray<ITypeSymbol> genericArgs = ((INamedTypeSymbol)type).TypeArguments; 1503keyType = actualTypeToConvert.TypeArguments[0]; 1504valueType = actualTypeToConvert.TypeArguments[1]; 1510keyType = actualTypeToConvert.TypeArguments[0]; 1511valueType = actualTypeToConvert.TypeArguments[1]; 1517valueType = ((INamedTypeSymbol)type).TypeArguments[0]; 1522valueType = actualTypeToConvert.TypeArguments[0]; 1527valueType = actualTypeToConvert.TypeArguments[0]; 1532valueType = actualTypeToConvert.TypeArguments[0]; 1537valueType = actualTypeToConvert.TypeArguments[0]; 1542valueType = actualTypeToConvert.TypeArguments[0]; 1547valueType = actualTypeToConvert.TypeArguments[0]; 1552valueType = actualTypeToConvert.TypeArguments[0]; 1557valueType = actualTypeToConvert.TypeArguments[0]; 1562valueType = actualTypeToConvert.TypeArguments[0]; 1797if (SymbolEqualityComparer.Default.Equals(actualDictionaryType.TypeArguments[0], _knownSymbols.StringType) && 1798(SymbolEqualityComparer.Default.Equals(actualDictionaryType.TypeArguments[1], _knownSymbols.ObjectType) || 1799SymbolEqualityComparer.Default.Equals(actualDictionaryType.TypeArguments[1], _knownSymbols.JsonElementType))) 1810if (SymbolEqualityComparer.Default.Equals(actualReadOnlyDictionaryType.TypeArguments[0], _knownSymbols.StringType) && 1811(SymbolEqualityComparer.Default.Equals(actualReadOnlyDictionaryType.TypeArguments[1], _knownSymbols.ObjectType) || 1812SymbolEqualityComparer.Default.Equals(actualReadOnlyDictionaryType.TypeArguments[1], _knownSymbols.JsonElementType))) 1815INamedTypeSymbol? dictionaryType = SymbolEqualityComparer.Default.Equals(actualReadOnlyDictionaryType.TypeArguments[1], _knownSymbols.ObjectType) 2390if (totalTypeParameterCount == genericTypeToConvert.TypeArguments.Length) 2392namedConverterType = ConstructNestedGenericType(unboundConverterType, genericTypeToConvert.TypeArguments);
src\runtime\src\libraries\Common\src\SourceGenerators\TypeModelHelper.cs (2)
31if (!current.TypeArguments.IsEmpty) 33(args ??= new()).AddRange(current.TypeArguments);
System.Windows.Forms.Analyzers.CSharp (1)
System\Windows\Forms\CSharp\Analyzers\AvoidPassingTaskWithoutCancellationToken\AvoidPassingTaskWithoutCancellationTokenAnalyzer.cs (1)
58|| funcType.TypeArguments.Length != 1
System.Windows.Forms.Analyzers.VisualBasic (1)
Analyzers\AvoidPassingTaskWithoutCancellationToken\AvoidPassingTaskWithoutCancellationTokenAnalyzer.vb (1)
62If funcType.TypeArguments.Length <> 1 OrElse funcType.ContainingNamespace.ToString() <> "System" Then