10 implementations of IsParams
GenerateDocumentationAndConfigFiles (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationParameterSymbol.cs (1)
24public bool IsParams { get; } = isParams;
Microsoft.CodeAnalysis.Analyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationParameterSymbol.cs (1)
24public bool IsParams { get; } = isParams;
Microsoft.CodeAnalysis.BannedApiAnalyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationParameterSymbol.cs (1)
24public bool IsParams { get; } = isParams;
Microsoft.CodeAnalysis.CodeStyle.Fixes (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationParameterSymbol.cs (1)
24public bool IsParams { get; } = isParams;
Microsoft.CodeAnalysis.CSharp (1)
Symbols\PublicModel\ParameterSymbol.cs (1)
65bool IParameterSymbol.IsParams => _underlying.IsParams;
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationParameterSymbol.cs (1)
24public bool IsParams { get; } = isParams;
Microsoft.CodeAnalysis.VisualBasic (1)
Symbols\ParameterSymbol.vb (1)
127Public MustOverride ReadOnly Property IsParamArray As Boolean Implements IParameterSymbol.IsParams, IParameterSymbol.IsParamsArray
Microsoft.CodeAnalysis.Workspaces (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationParameterSymbol.cs (1)
24public bool IsParams { get; } = isParams;
Roslyn.Diagnostics.Analyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationParameterSymbol.cs (1)
24public bool IsParams { get; } = isParams;
Text.Analyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationParameterSymbol.cs (1)
24public bool IsParams { get; } = isParams;
241 references to IsParams
GenerateDocumentationAndConfigFiles (10)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (1)
300isParams ?? parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IMethodSymbolExtensions.cs (2)
71CodeGenerationSymbolFactory.CreateParameterSymbol(p.GetAttributes(), p.RefKind, p.IsParams, p.Type.SubstituteTypes(mapping, typeGenerator), p.Name, p.IsOptional, 168p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IParameterSymbolExtensions.cs (2)
29parameter.IsParams, 44parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IPropertySymbolExtensions.cs (1)
63p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
91if (parameterSymbol.IsParams)
Metrics (3)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
Metrics.Legacy (3)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
Microsoft.AspNetCore.App.Analyzers (3)
RouteEmbeddedLanguage\Infrastructure\RouteStringSyntaxDetector.cs (2)
442if (lastParameter.IsParams) 518if (lastParameter.IsParams)
src\Shared\Roslyn\CodeAnalysisExtensions.cs (1)
192else if (invocation.TargetMethod.Parameters[0].IsParams)
Microsoft.AspNetCore.Mvc.Analyzers (1)
src\Shared\Roslyn\CodeAnalysisExtensions.cs (1)
192else if (invocation.TargetMethod.Parameters[0].IsParams)
Microsoft.AspNetCore.Mvc.Api.Analyzers (2)
src\Shared\Roslyn\CodeAnalysisExtensions.cs (1)
192else if (invocation.TargetMethod.Parameters[0].IsParams)
SymbolApiConventionMatcher.cs (1)
35if (conventionParameter.IsParams)
Microsoft.CodeAnalysis.Analyzers (11)
MetaAnalyzers\RegisterActionAnalyzer.cs (1)
328method.Parameters.Length == 2 && method.Parameters[1].IsParams)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (1)
300isParams ?? parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IMethodSymbolExtensions.cs (2)
71CodeGenerationSymbolFactory.CreateParameterSymbol(p.GetAttributes(), p.RefKind, p.IsParams, p.Type.SubstituteTypes(mapping, typeGenerator), p.Name, p.IsOptional, 168p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IParameterSymbolExtensions.cs (2)
29parameter.IsParams, 44parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IPropertySymbolExtensions.cs (1)
63p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
91if (parameterSymbol.IsParams)
Microsoft.CodeAnalysis.AnalyzerUtilities (5)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntityDataFlowOperationVisitor.cs (2)
157Debug.Assert(analysisEntity.Symbol is IParameterSymbol parameter && parameter.IsParams); 183if (parameter.IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
Microsoft.CodeAnalysis.BannedApiAnalyzers (11)
RestrictedInternalsVisibleToAnalyzer.cs (1)
145!assemblyAttribute.AttributeConstructor.Parameters[1].IsParams)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (1)
300isParams ?? parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IMethodSymbolExtensions.cs (2)
71CodeGenerationSymbolFactory.CreateParameterSymbol(p.GetAttributes(), p.RefKind, p.IsParams, p.Type.SubstituteTypes(mapping, typeGenerator), p.Name, p.IsOptional, 168p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IParameterSymbolExtensions.cs (2)
29parameter.IsParams, 44parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IPropertySymbolExtensions.cs (1)
63p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
91if (parameterSymbol.IsParams)
Microsoft.CodeAnalysis.CodeStyle (4)
src\Analyzers\Core\Analyzers\UseCollectionInitializer\UpdateExpressionState.cs (1)
243if (parameter.IsParams)
src\Analyzers\Core\Analyzers\ValidateFormatString\AbstractValidateFormatStringDiagnosticAnalyzer.cs (1)
236if (parameterWithMatchingName.IsParams && parameters.Length != arguments.Count)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
Microsoft.CodeAnalysis.CodeStyle.Fixes (11)
src\Analyzers\Core\CodeFixes\AddExplicitCast\Fixer.cs (1)
154if (parameters[parameterIndex].IsParams
src\Analyzers\Core\CodeFixes\AddParameter\AbstractAddParameterCodeFixProvider.cs (2)
463if (method.Parameters.LastOrDefault()?.IsParams == true) 523if (parameter.IsParams && parameter.Type is IArrayTypeSymbol arrayType)
src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.cs (1)
219parameter.IsParams ||
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (1)
300isParams ?? parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IMethodSymbolExtensions.cs (2)
71CodeGenerationSymbolFactory.CreateParameterSymbol(p.GetAttributes(), p.RefKind, p.IsParams, p.Type.SubstituteTypes(mapping, typeGenerator), p.Name, p.IsOptional, 168p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IParameterSymbolExtensions.cs (2)
29parameter.IsParams, 44parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IPropertySymbolExtensions.cs (1)
63p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
91if (parameterSymbol.IsParams)
Microsoft.CodeAnalysis.CSharp (2)
SymbolDisplay\SymbolDisplayVisitor.Members.cs (2)
866if (symbol.IsParams) 874!(symbol.IsParams && symbol.Type is { IsRefLikeType: true } or ITypeParameterSymbol { AllowsRefLikeType: true }))
Microsoft.CodeAnalysis.CSharp.CodeStyle (4)
src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (2)
360GetAccessibleInstanceConstructor(constructors, c => c.Parameters.All(p => p.IsOptional || p.IsParams)); 958if (originalCreateMethod.Parameters is [{ IsParams: true, Type: IArrayTypeSymbol { ElementType: ITypeParameterSymbol { TypeParameterKind: TypeParameterKind.Method } } }])
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ArgumentSyntaxExtensions.cs (1)
102if (lastParameter.IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\AttributeArgumentSyntaxExtensions.cs (1)
72if (lastParameter.IsParams)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (9)
src\Analyzers\CSharp\CodeFixes\UseExplicitArrayInExpressionTree\CSharpUseExplicitArrayInExpressionTreeCodeFixProvider.cs (2)
37originalMethod.Parameters is not [.., { IsParams: true } originalParamsParameter]) 49currentMethod.Parameters is [.., { IsParams: true, Type: IArrayTypeSymbol arrayType }])
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\ParameterGenerator.cs (1)
94if (!parameter.IsParams && !isExplicit && !parameter.IsRefOrOut())
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpSyntaxGeneratorInternal.cs (1)
135=> GetParameterModifiers(ParameterIsScoped(parameter), parameter.RefKind, parameter.IsParams, forFunctionPointerReturnParameter);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (5)
484argumentOpt == null && info.Symbol is IMethodSymbol method && method.Parameters.All(p => p.IsOptional || p.IsParams)) 753var minParameterCount = parameterList.Count(p => !p.IsParams && !p.IsOptional); 754var maxParameterCount = parameterList.Any(p => p.IsParams) ? int.MaxValue : parameterList.Length; 781.Select(p => new TypeInferenceInfo(p.Type, p.IsParams)); 794var info = new TypeInferenceInfo(parameter.Type, parameter.IsParams);
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (4)
Semantics\ExtensionTests.cs (1)
3164Assert.False(parameter.IsParams);
Semantics\ParamsCollectionTests.cs (3)
53Assert.Equal(isParamArray | isParamCollection, iParameter.IsParams); 4342Assert.False(parameter.IsParams); 4348Assert.False(parameter.IsParams);
Microsoft.CodeAnalysis.CSharp.Features (11)
ChangeSignature\CSharpChangeSignatureService.cs (1)
922RoslynDebug.Assert(parameterSymbol.IsParams);
CodeRefactorings\ConvertLocalFunctionToMethod\CSharpConvertLocalFunctionToMethodCodeRefactoringProvider.cs (2)
175return parameter.IsOptional || parameter.IsParams; 280var firstOptionalOrParamsParameterIndex = parameters.IndexOf(p => p.IsOptional || p.IsParams);
SignatureHelp\AttributeSignatureHelpProvider.cs (1)
141constructor.Parameters is [.., { IsParams: true }] && namedParameters.Count == 0;
SignatureHelp\LightweightOverloadResolution.cs (2)
125if (parameter.IsParams 227inParams |= method.Parameters[parameterIndex].IsParams;
src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (2)
360GetAccessibleInstanceConstructor(constructors, c => c.Parameters.All(p => p.IsOptional || p.IsParams)); 958if (originalCreateMethod.Parameters is [{ IsParams: true, Type: IArrayTypeSymbol { ElementType: ITypeParameterSymbol { TypeParameterKind: TypeParameterKind.Method } } }])
src\Analyzers\CSharp\CodeFixes\UseExplicitArrayInExpressionTree\CSharpUseExplicitArrayInExpressionTreeCodeFixProvider.cs (2)
37originalMethod.Parameters is not [.., { IsParams: true } originalParamsParameter]) 49currentMethod.Parameters is [.., { IsParams: true, Type: IArrayTypeSymbol arrayType }])
UseNamedArguments\CSharpUseNamedArgumentsCodeRefactoringProvider.cs (1)
33=> !parameters.Last().IsParams || parameters.Length >= argumentCount;
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (33)
Semantics\DelegateTypeTests.cs (20)
13615Assert.True(cm.Parameters.Single().IsParams); 13617Assert.True(dm.Parameters.Single().IsParams); 13660Assert.False(cm.Parameters.Single().IsParams); 13662Assert.False(dm.Parameters.Single().IsParams); 13682Assert.True(cm.Parameters.Single().IsParams); 13684Assert.False(dm.Parameters.Single().IsParams); 13732Assert.True(cm.Parameters.Single().IsParams); 13734Assert.True(dm.Parameters.Single().IsParams); 13799Assert.True(cm.Parameters.Single().IsParams); 13801Assert.False(dm.Parameters.Single().IsParams); 13865Assert.True(cm.Parameters.Single().IsParams); 13867Assert.True(dm.Parameters.Single().IsParams); 13946Assert.True(cm.Parameters.Single().IsParams); 13948Assert.False(dm.Parameters.Single().IsParams); 13987Assert.False(cm.Parameters.Single().IsParams); 13989Assert.False(dm.Parameters.Single().IsParams); 14030Assert.True(cm.Parameters.Single().IsParams); 14032Assert.True(dm.Parameters.Single().IsParams); 14059Assert.False(cm.Parameters.Single().IsParams); 14061Assert.True(dm.Parameters.Single().IsParams);
Semantics\LocalFunctionTests.cs (6)
2594Assert.True(methods[0].Parameters[0].IsParams); 2595Assert.True(methods[0].Parameters[1].IsParams); 2596Assert.False(methods[0].Parameters[2].IsParams); 2599Assert.True(methods[1].Parameters[0].IsParams); 2600Assert.False(methods[1].Parameters[1].IsParams); 2601Assert.True(methods[1].Parameters[2].IsParams);
Semantics\SimpleLambdaParametersWithModifiersTests.cs (7)
936Assert.True(symbol.Parameters is [{ Name: "x", Type: IArrayTypeSymbol { ElementType.SpecialType: SpecialType.System_Int32 }, IsParams: true }]); 964Assert.True(symbol.Parameters is [{ Name: "x", Type: IArrayTypeSymbol { ElementType.SpecialType: SpecialType.System_Int32 }, IsParams: false }]); 1040Assert.True(symbol.Parameters is [{ Name: "x", Type: IArrayTypeSymbol { ElementType.SpecialType: SpecialType.System_Int32 }, RefKind: RefKind.Ref, IsParams: true }]); 1075Assert.True(symbol.Parameters is [{ Name: "x", Type: IArrayTypeSymbol { ElementType.SpecialType: SpecialType.System_Int32 }, RefKind: RefKind.Ref, IsParams: true }]); 1104Assert.True(symbol.Parameters is [{ Name: "x", Type: IErrorTypeSymbol, RefKind: RefKind.Out, IsParams: false }]); 1133Assert.True(symbol.Parameters is [{ Name: "x", Type: IErrorTypeSymbol, RefKind: RefKind.Ref, IsParams: false }]); 1223Assert.True(symbol.Parameters is [{ Name: "x", Type.SpecialType: SpecialType.System_Int32, IsParams: true }]);
Microsoft.CodeAnalysis.CSharp.Workspaces (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ArgumentSyntaxExtensions.cs (1)
102if (lastParameter.IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\AttributeArgumentSyntaxExtensions.cs (1)
72if (lastParameter.IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\ParameterGenerator.cs (1)
94if (!parameter.IsParams && !isExplicit && !parameter.IsRefOrOut())
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpSyntaxGeneratorInternal.cs (1)
135=> GetParameterModifiers(ParameterIsScoped(parameter), parameter.RefKind, parameter.IsParams, forFunctionPointerReturnParameter);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (5)
484argumentOpt == null && info.Symbol is IMethodSymbol method && method.Parameters.All(p => p.IsOptional || p.IsParams)) 753var minParameterCount = parameterList.Count(p => !p.IsParams && !p.IsOptional); 754var maxParameterCount = parameterList.Any(p => p.IsParams) ? int.MaxValue : parameterList.Length; 781.Select(p => new TypeInferenceInfo(p.Type, p.IsParams)); 794var info = new TypeInferenceInfo(parameter.Type, parameter.IsParams);
Microsoft.CodeAnalysis.EditorFeatures.Test.Utilities (3)
Completion\AbstractArgumentProviderTests`1.cs (3)
103Contract.ThrowIfTrue(parameters.Any(parameter => parameter.IsParams), "'params' parameters are not currently supported by this test."); 113=> parameters.Count(parameter => !parameter.IsOptional && !parameter.IsParams); 116=> parameters.Any(parameter => parameter.IsParams) ? int.MaxValue : parameters.Length;
Microsoft.CodeAnalysis.Extensions.Package (1)
Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
Microsoft.CodeAnalysis.Features (24)
AddConstructorParametersFromMembers\AddConstructorParametersFromMembersCodeRefactoringProvider.cs (1)
150isParams: p.IsParams,
AddConstructorParametersFromMembers\AddConstructorParametersFromMembersCodeRefactoringProvider.State.cs (1)
114!constructorParams.Any(static p => p.IsParams) &&
ChangeSignature\AbstractChangeSignatureService.cs (4)
521if (!param.IsParams) 800parameters.LastOrDefault()?.IsParams == true && 841parameters[indexInListOfPreexistingArguments].IsParams) 1045if (symbol is IMethodSymbol methodSymbol && methodSymbol.Parameters.LastOrDefault()?.IsParams == true)
ChangeSignature\ParameterConfiguration.cs (1)
39if ((parametersList.LastOrDefault() as ExistingParameter)?.Symbol.IsParams == true)
Completion\Providers\AbstractPartialMethodCompletionProvider.cs (1)
74parameters: method.Parameters.SelectAsArray(p => CodeGenerationSymbolFactory.CreateParameterSymbol(p.GetAttributes(), p.RefKind, p.IsParams, p.Type, p.Name)),
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (2)
4487oldParameter.IsParams != newParameter.IsParams ||
GenerateConstructors\AbstractGenerateConstructorsCodeRefactoringProvider.State.cs (1)
107where c.Parameters.All(p => p.RefKind == RefKind.None) && !c.Parameters.Any(static p => p.IsParams)
GoToBase\AbstractGoToBaseService.cs (1)
28baseConstructor.Parameters.All(p => p.IsOptional || p.IsParams));
InlineHints\AbstractInlineParameterNameHintsService.cs (1)
111if (!parameter.IsParams)
IntroduceParameter\AbstractIntroduceParameterCodeRefactoringProvider.cs (1)
220if (parameter.IsParams)
IntroduceParameter\IntroduceParameterDocumentRewriter.cs (1)
604!parameter.IsParams &&
Shared\Extensions\ISymbolExtensions_Sorting.cs (3)
89if (xParam.IsParams != yParam.IsParams) 91return xParam.IsParams ? 1 : -1;
src\Analyzers\Core\Analyzers\UseCollectionInitializer\UpdateExpressionState.cs (1)
243if (parameter.IsParams)
src\Analyzers\Core\Analyzers\ValidateFormatString\AbstractValidateFormatStringDiagnosticAnalyzer.cs (1)
236if (parameterWithMatchingName.IsParams && parameters.Length != arguments.Count)
src\Analyzers\Core\CodeFixes\AddExplicitCast\Fixer.cs (1)
154if (parameters[parameterIndex].IsParams
src\Analyzers\Core\CodeFixes\AddParameter\AbstractAddParameterCodeFixProvider.cs (2)
463if (method.Parameters.LastOrDefault()?.IsParams == true) 523if (parameter.IsParams && parameter.Type is IArrayTypeSymbol arrayType)
src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.cs (1)
219parameter.IsParams ||
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (10)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (1)
300isParams ?? parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IMethodSymbolExtensions.cs (2)
71CodeGenerationSymbolFactory.CreateParameterSymbol(p.GetAttributes(), p.RefKind, p.IsParams, p.Type.SubstituteTypes(mapping, typeGenerator), p.Name, p.IsOptional, 168p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IParameterSymbolExtensions.cs (2)
29parameter.IsParams, 44parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IPropertySymbolExtensions.cs (1)
63p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
91if (parameterSymbol.IsParams)
Microsoft.CodeAnalysis.PublicApiAnalyzers (3)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
Microsoft.CodeAnalysis.ResxSourceGenerator (3)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
Microsoft.CodeAnalysis.Test.Utilities (2)
Diagnostics\OperationTestAnalyzer.cs (2)
1104if (argument.Parameter.IsParams) 1131if (argument.Parameter.IsParams)
Microsoft.CodeAnalysis.VisualBasic (1)
Symbols\ParameterSymbol.vb (1)
127Public MustOverride ReadOnly Property IsParamArray As Boolean Implements IParameterSymbol.IsParams, IParameterSymbol.IsParamsArray
Microsoft.CodeAnalysis.VisualBasic.CodeStyle (1)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Utilities\CastAnalyzer.vb (1)
38If parameter?.IsParams = True AndAlso TypeOf parameter.Type Is IArrayTypeSymbol Then
Microsoft.CodeAnalysis.VisualBasic.CodeStyle.Fixes (2)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\EventGenerator.vb (1)
191If Not parameter.IsOptional AndAlso Not parameter.IsParams Then
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\ParameterGenerator.vb (1)
73If parameter.IsParams Then
Microsoft.CodeAnalysis.VisualBasic.Symbol.UnitTests (1)
SymbolsTests\ParamsCollectionTests.vb (1)
143Assert.Equal(isParamArray, iParameter.IsParams)
Microsoft.CodeAnalysis.VisualBasic.Workspaces (3)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Utilities\CastAnalyzer.vb (1)
38If parameter?.IsParams = True AndAlso TypeOf parameter.Type Is IArrayTypeSymbol Then
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\EventGenerator.vb (1)
191If Not parameter.IsOptional AndAlso Not parameter.IsParams Then
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\ParameterGenerator.vb (1)
73If parameter.IsParams Then
Microsoft.CodeAnalysis.Workspaces (13)
Editing\SyntaxGenerator.cs (1)
330symbol.IsParams,
FindSymbols\FindReferences\Finders\ConstructorSymbolReferenceFinder.cs (3)
244var minimumArgumentCount = symbol.Parameters.Count(static p => !p.IsOptional && !p.IsParams); 245var maximumArgumentCount = symbol.Parameters is [.., { IsParams: true }] 249var exactArgumentCount = symbol.Parameters.Any(static p => p.IsOptional || p.IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (1)
300isParams ?? parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IMethodSymbolExtensions.cs (2)
71CodeGenerationSymbolFactory.CreateParameterSymbol(p.GetAttributes(), p.RefKind, p.IsParams, p.Type.SubstituteTypes(mapping, typeGenerator), p.Name, p.IsOptional, 168p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IParameterSymbolExtensions.cs (2)
29parameter.IsParams, 44parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IPropertySymbolExtensions.cs (1)
63p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
91if (parameterSymbol.IsParams)
Microsoft.Extensions.Options.SourceGeneration (1)
Parser.cs (1)
502bool lastParameterDeclaredWithParamsKeyword = parameters.Length > 0 && parameters[parameters.Length - 1].IsParams;
Microsoft.VisualStudio.LanguageServices (1)
ChangeSignature\ChangeSignatureDialogViewModel.ParameterViewModels.cs (1)
202if (ParameterSymbol.IsParams)
Microsoft.VisualStudio.LanguageServices.CSharp (2)
CodeModel\CSharpCodeModelService_Prototype.cs (1)
535else if (parameter.IsParams)
ObjectBrowser\DescriptionBuilder.cs (1)
436if (current.IsParams)
Microsoft.VisualStudio.LanguageServices.VisualBasic (1)
ObjectBrowser\DescriptionBuilder.vb (1)
422If current.IsParams Then
Roslyn.Diagnostics.Analyzers (10)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (1)
300isParams ?? parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IMethodSymbolExtensions.cs (2)
71CodeGenerationSymbolFactory.CreateParameterSymbol(p.GetAttributes(), p.RefKind, p.IsParams, p.Type.SubstituteTypes(mapping, typeGenerator), p.Name, p.IsOptional, 168p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IParameterSymbolExtensions.cs (2)
29parameter.IsParams, 44parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IPropertySymbolExtensions.cs (1)
63p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
91if (parameterSymbol.IsParams)
Roslyn.Diagnostics.CSharp.Analyzers (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ArgumentSyntaxExtensions.cs (1)
102if (lastParameter.IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\AttributeArgumentSyntaxExtensions.cs (1)
72if (lastParameter.IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\ParameterGenerator.cs (1)
94if (!parameter.IsParams && !isExplicit && !parameter.IsRefOrOut())
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpSyntaxGeneratorInternal.cs (1)
135=> GetParameterModifiers(ParameterIsScoped(parameter), parameter.RefKind, parameter.IsParams, forFunctionPointerReturnParameter);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (5)
484argumentOpt == null && info.Symbol is IMethodSymbol method && method.Parameters.All(p => p.IsOptional || p.IsParams)) 753var minParameterCount = parameterList.Count(p => !p.IsParams && !p.IsOptional); 754var maxParameterCount = parameterList.Any(p => p.IsParams) ? int.MaxValue : parameterList.Length; 781.Select(p => new TypeInferenceInfo(p.Type, p.IsParams)); 794var info = new TypeInferenceInfo(parameter.Type, parameter.IsParams);
Roslyn.Diagnostics.VisualBasic.Analyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Utilities\CastAnalyzer.vb (1)
38If parameter?.IsParams = True AndAlso TypeOf parameter.Type Is IArrayTypeSymbol Then
Test.Utilities (3)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
Text.Analyzers (10)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
46else if (invocation.TargetMethod.Parameters[0].IsParams)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (1)
1084(signature1Parameters.Length > 0 && !signature1Parameters.Last().IsParams));
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (1)
421=> symbol.GetParameters() is [.., { IsParams: true }];
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (1)
300isParams ?? parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IMethodSymbolExtensions.cs (2)
71CodeGenerationSymbolFactory.CreateParameterSymbol(p.GetAttributes(), p.RefKind, p.IsParams, p.Type.SubstituteTypes(mapping, typeGenerator), p.Name, p.IsOptional, 168p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IParameterSymbolExtensions.cs (2)
29parameter.IsParams, 44parameter.IsParams,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\IPropertySymbolExtensions.cs (1)
63p.RefKind, p.IsParams, p.Type, p.Name, p.IsOptional,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (1)
91if (parameterSymbol.IsParams)