9 overrides of IsParams
Microsoft.CodeAnalysis.CSharp (9)
Symbols\FunctionPointers\FunctionPointerParameterSymbol.cs (1)
73public override bool IsParams => false;
Symbols\Metadata\PE\PEParameterSymbol.cs (1)
975public override bool IsParams
Symbols\SignatureOnlyParameterSymbol.cs (1)
41public override bool IsParams { get { return _isParams; } }
Symbols\Source\SourceClonedParameterSymbol.cs (1)
47public override bool IsParams
Symbols\Source\SourceComplexParameterSymbol.cs (1)
1491public sealed override bool IsParams => (_parameterSyntaxKind & ParameterSyntaxKind.ParamsParameter) != 0;
Symbols\Source\SourceSimpleParameterSymbol.cs (1)
40public override bool IsParams
Symbols\Source\ThisParameterSymbol.cs (1)
83public override bool IsParams
Symbols\Synthesized\SynthesizedParameterSymbol.cs (1)
63public override bool IsParams
Symbols\Wrapped\WrappedParameterSymbol.cs (1)
89public override bool IsParams
82 references to IsParams
Microsoft.CodeAnalysis.CSharp (39)
Binder\Binder.ValueChecks.cs (1)
2639if (parameters[paramIndex] is not { IsParams: true, Type.TypeKind: TypeKind.Array })
Binder\Binder_Attributes.cs (2)
707if (parameter.IsParams && parameter.Type.IsSZArray()) 747Debug.Assert(paramArray.IsParams);
Binder\Binder_Await.cs (1)
482return parameter.IsOptional || parameter.IsParams;
Binder\Binder_Conversions.cs (2)
843if (lambdaParameter.IsParams && !delegateParameter.IsParams && p == lambdaSymbol.ParameterCount - 1 && lambdaParameter.Type.IsSZArray())
Binder\Binder_Expressions.cs (2)
8298return !parameter.IsOptional && !parameter.IsParams; 9202var hasParamsArray = parameters is [.., { IsParams: true } p] && p.Type.IsSZArray();
Binder\Binder_InterpolatedString.cs (3)
864IsParams: true, 869Debug.Assert(!interpolatedStringParameter.IsParams || memberAnalysisResult.Kind == MemberResolutionKind.ApplicableInExpandedForm); 897interpolatedStringParameter.IsParams ? ((ArrayTypeSymbol)interpolatedStringParameter.Type).ElementType : interpolatedStringParameter.Type,
Binder\Binder_Invocation.cs (2)
746Debug.Assert(parameters.Last().IsParams); 1314Debug.Assert(!expanded || parameters[^1].IsParams);
Binder\Semantics\Conversions\Conversions.cs (1)
320TypeWithAnnotations.Create(compilation.GetSpecialType(SpecialType.System_Object), customModifiers: parameter.TypeWithAnnotations.CustomModifiers), parameter.RefCustomModifiers, parameter.IsParams, parameter.RefKind);
Binder\Semantics\OverloadResolution\OverloadResolution.cs (2)
1040return final.IsParams && ((ParameterSymbol)final.OriginalDefinition).Type.IsSZArray(); 1649parameter.IsParams && type.IsSZArray())
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (1)
1306if (parameter.IsParams && isLastParameter)
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (2)
729x.IsParams == y.IsParams) &&
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
1198Debug.Assert(lastParam.IsParams);
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (2)
500Debug.Assert(method.Parameters.AsSpan()[1..].All(assertParametersAreOptional, (p, assertOptional) => (p.IsOptional || p.IsParams || !assertOptional) && p.RefKind == RefKind.None)); 505Debug.Assert(!assertParametersAreOptional || method.Parameters.All(p => p.IsOptional || p.IsParams));
Symbols\MemberSymbolExtensions.cs (1)
27return !@params.IsEmpty && @params.Last().IsParams;
Symbols\Metadata\PE\PEMethodSymbol.cs (1)
1087return !parameter.IsParams;
Symbols\MethodSymbolExtensions.cs (1)
18return method.ParameterCount != 0 && method.Parameters[method.ParameterCount - 1].IsParams;
Symbols\ParameterSymbol.cs (1)
152return !IsParams && IsMetadataOptional &&
Symbols\PublicModel\ParameterSymbol.cs (1)
65bool IParameterSymbol.IsParams => _underlying.IsParams;
Symbols\Retargeting\RetargetingSymbolTranslator.cs (2)
1030param.IsParams, 1108param.IsParams,
Symbols\Source\CustomModifierUtils.cs (4)
135(alsoCopyParamsModifier && (sourceParameter.IsParams != destinationParameter.IsParams))) 143bool newParams = alsoCopyParamsModifier ? sourceParameter.IsParams : destinationParameter.IsParams;
Symbols\Source\ParameterHelpers.cs (1)
192ReportParameterErrors(owner, parameterSyntax, parameter.Ordinal, lastParameterIndex: lastIndex, parameter.IsParams, parameter.TypeWithAnnotations,
Symbols\Source\SourceClonedParameterSymbol.cs (1)
49get { return !_suppressOptional && _originalParam.IsParams; }
Symbols\Source\SourceConstructorSymbolBase.cs (1)
75if (_lazyIsVararg && (IsGenericMethod || ContainingType.IsGenericType || _lazyParameters.Length > 0 && _lazyParameters[_lazyParameters.Length - 1].IsParams))
Symbols\Source\SourceOrdinaryMethodSymbolBase.cs (1)
424else if (isVararg && (IsGenericMethod || ContainingType.IsGenericType || Parameters.Length > 0 && Parameters[Parameters.Length - 1].IsParams))
Symbols\Source\SourceParameterSymbolBase.cs (1)
75if (this.IsParams)
Symbols\Wrapped\WrappedParameterSymbol.cs (1)
91get { return _underlyingParameter.IsParams; }
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (4)
CodeGen\CodeGenOverridingAndHiding.cs (3)
4111Assert.True(parameterA.IsParams, "Parameter is not ParameterArray"); 4117Assert.True(parameterB.IsParams, "Parameter is not ParameterArray"); 4133Assert.Equal(expected, parameter.IsParams);
Emit\NoPiaEmbedTypes.cs (1)
3108Assert.True(m1.Parameters[0].IsParams);
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (5)
Attributes\AttributeTests.cs (3)
3416Assert.True(attrs.First().AttributeConstructor.Parameters.Last().IsParams); 3553Assert.True(attrs.First().AttributeConstructor.Parameters.Last().IsParams); 8519Assert.True(yParam.IsParams);
Attributes\AttributeTests_WellKnownAttributes.cs (1)
9657Assert.True(param.IsParams);
Attributes\WellKnownAttributesTestBase.cs (1)
88Assert.Equal(expected, parameter.IsParams);
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (13)
Semantics\LambdaTests.cs (13)
8304Assert.True(((SourceParameterSymbol)lambdas[0].Parameters.Single()).IsParams); 8306Assert.False(((SourceParameterSymbol)lambdas[1].Parameters.Single()).IsParams); 8310Assert.False(((SourceParameterSymbol)lambdas[2].Parameters[0]).IsParams); 8311Assert.True(((SourceParameterSymbol)lambdas[2].Parameters[1]).IsParams); 8331Assert.True(((SourceParameterSymbol)lambdas[0].Parameters[0]).IsParams); 8332Assert.True(((SourceParameterSymbol)lambdas[0].Parameters[1]).IsParams); 8333Assert.False(((SourceParameterSymbol)lambdas[0].Parameters[2]).IsParams); 8337Assert.True(((SourceParameterSymbol)lambdas[1].Parameters[0]).IsParams); 8338Assert.False(((SourceParameterSymbol)lambdas[1].Parameters[1]).IsParams); 8339Assert.True(((SourceParameterSymbol)lambdas[1].Parameters[2]).IsParams); 8361Assert.True(lam1.DelegateParameters().Single().IsParams); 8366Assert.False(lam3Parameters[0].IsParams); 8367Assert.True(lam3Parameters[1].IsParams);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (20)
Symbols\Metadata\MetadataMemberTests.cs (2)
276Assert.False(p3.IsParams); 371Assert.False(p1.IsParams);
Symbols\Metadata\PE\LoadingIndexers.cs (5)
920Assert.True(readWrite.Parameters.Last().IsParams); 925Assert.True(readOnly.Parameters.Last().IsParams); 930Assert.True(writeOnly.Parameters.Last().IsParams); 1004Assert.False(readWrite.Parameters.Last().IsParams); //favour setter 1009Assert.True(readOnly.Parameters.Last().IsParams); //favour setter
Symbols\Source\CustomModifierCopyTests.cs (12)
532Assert.True(baseM.Parameters.Single().IsParams, "Base.M.IsParams should be true"); 533Assert.False(baseN.Parameters.Single().IsParams, "Base.N.IsParams should be false"); 534Assert.True(derivedM.Parameters.Single().IsParams, "Derived.M.IsParams should be true"); //NB: does not reflect source 535Assert.False(derivedN.Parameters.Single().IsParams, "Derived.N.IsParams should be false"); //NB: does not reflect source 536Assert.True(derived2M.Parameters.Single().IsParams, "Derived2.M.IsParams should be true"); 537Assert.False(derived2N.Parameters.Single().IsParams, "Derived2.N.IsParams should be false"); 691Assert.True(baseIndexer1.Parameters.Single().IsParams, "Base.Indexer1.IsParams should be true"); 692Assert.False(baseIndexer2.Parameters.Single().IsParams, "Base.Indexer2.IsParams should be false"); 693Assert.True(derivedIndexer1.Parameters.Single().IsParams, "Derived.Indexer1.IsParams should be true"); //Indexer2B: does not reflect source 694Assert.False(derivedIndexer2.Parameters.Single().IsParams, "Derived.Indexer2.IsParams should be false"); //Indexer2B: does not reflect source 695Assert.True(derived2Indexer1.Parameters.Single().IsParams, "Derived2.Indexer1.IsParams should be true"); 696Assert.False(derived2Indexer2.Parameters.Single().IsParams, "Derived2.Indexer2.IsParams should be false");
Symbols\TypeTests.cs (1)
1574Assert.True(paras[1].IsParams);
Microsoft.CodeAnalysis.CSharp.Test.Utilities (1)
FunctionPointerUtilities.cs (1)
113Assert.False(symbol.IsParams);