6 instantiations of ParameterIndex
ILLink.RoslynAnalyzer (6)
src\tools\illink\src\ILLink.Shared\ParameterIndex.cs (6)
41public static ParameterIndex operator ++(ParameterIndex val) => new ParameterIndex(val.Index + 1); 52=> new ParameterIndex(x); 57=> new ParameterIndex(left.Index + right.Index); 60=> new ParameterIndex(left.Index - right.Index); 63=> new ParameterIndex(left.Index + right); 66=> new ParameterIndex(left.Index - right);
121 references to ParameterIndex
ILLink.RoslynAnalyzer (121)
DynamicallyAccessedMembersAnalyzer.cs (2)
297var overrideMethodThisAnnotation = FlowAnnotations.GetMethodParameterAnnotation(new ParameterProxy(new(overrideMethod), (ParameterIndex)0)); 298var baseMethodThisAnnotation = FlowAnnotations.GetMethodParameterAnnotation(new ParameterProxy(new(baseMethod), (ParameterIndex)0));
IMethodSymbolExtensions.cs (4)
35/// Gets the parameter at the <see cref="ParameterIndex"/> provided. Note ParameterIndex treat the implicit 'this' as index 0. 38public static ParameterProxy GetParameter(this IMethodSymbol method, ParameterIndex index) 46/// Gets the parameter at the <see cref="ParameterIndex"/> provided. Note ParameterIndex treat the implicit 'this' as index 0. 49public static ParameterProxy? TryGetParameter(this IMethodSymbol method, ParameterIndex index)
src\tools\illink\src\ILLink.Shared\ParameterIndex.cs (21)
30public readonly struct ParameterIndex : System.IEquatable<ParameterIndex> 37public static bool operator ==(ParameterIndex left, ParameterIndex right) => left.Index == right.Index; 39public static bool operator !=(ParameterIndex left, ParameterIndex right) => left.Index != right.Index; 41public static ParameterIndex operator ++(ParameterIndex val) => new ParameterIndex(val.Index + 1); 44=> obj is ParameterIndex other && Index == other.Index; 46public bool Equals(ParameterIndex other) 51public static explicit operator ParameterIndex(int x) 54public static explicit operator int(ParameterIndex x) 56public static ParameterIndex operator +(ParameterIndex left, ParameterIndex right) 59public static ParameterIndex operator -(ParameterIndex left, ParameterIndex right) 62public static ParameterIndex operator +(ParameterIndex left, int right) 65public static ParameterIndex operator -(ParameterIndex left, int right)
src\tools\illink\src\ILLink.Shared\TrimAnalysis\HandleCallAction.cs (19)
468if (calledMethod.HasParameterOfType((ParameterIndex)2, "System.Reflection.BindingFlags")) 540else if (calledMethod.HasMetadataParametersCount(2) && calledMethod.HasParameterOfType((ParameterIndex)2, "System.Reflection.BindingFlags")) 542else if (calledMethod.HasMetadataParametersCount(3) && calledMethod.HasParameterOfType((ParameterIndex)3, "System.Reflection.BindingFlags")) 598if (calledMethod.HasParameterOfType((ParameterIndex)2, "System.Reflection.BindingFlags")) 600else if (calledMethod.HasParameterOfType((ParameterIndex)3, "System.Reflection.BindingFlags")) 688if (calledMethod.HasParameterOfType((ParameterIndex)2, "System.Reflection.BindingFlags")) 777var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (ParameterIndex)1), requiredMemberTypes); 840var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (ParameterIndex)0), DynamicallyAccessedMemberTypes.PublicParameterlessConstructor); 860case IntrinsicId.Expression_Property when calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.MethodInfo"): 886_annotations.GetMethodParameterValue(new(calledMethod, (ParameterIndex)1), DynamicallyAccessedMemberTypes.None).GetDiagnosticArgumentsForAnnotationMismatch().ToArray()); 910var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (ParameterIndex)1), memberTypes); 957new ParameterProxy(calledMethod, (ParameterIndex)0), 1051if ((calledMethod.HasMetadataParametersCount(3) && calledMethod.HasParameterOfType((ParameterIndex)2, "System.Boolean") && argumentValues[2].AsConstInt() != 0) || 1293if (calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.BindingFlags")) 1390if (calledMethod.HasParameterOfType((ParameterIndex)1, "System.Boolean")) 1455var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (ParameterIndex)0), requiredMemberTypes); 1680if (calledMethod.HasMetadataParametersCount(8) && calledMethod.HasParameterOfType((ParameterIndex)2 + offset, "System.Boolean")) 1721_diagnosticContext.AddDiagnostic(DiagnosticId.UnrecognizedParameterInMethodCreateInstance, new ParameterProxy(calledMethod, (ParameterIndex)1 + offset).GetDisplayName(), calledMethod.GetDisplayName()); 1727_diagnosticContext.AddDiagnostic(DiagnosticId.UnrecognizedParameterInMethodCreateInstance, new ParameterProxy(calledMethod, (ParameterIndex)0 + offset).GetDisplayName(), calledMethod.GetDisplayName());
src\tools\illink\src\ILLink.Shared\TrimAnalysis\Intrinsics.cs (59)
32&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.RuntimeMethodHandle") 44&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Delegate") 49&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type") 50&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 55&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type") 56&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.,String") 61&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type") 62&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 67&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type") 68&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 73&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type") 79&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Type") 86&& ((calledMethod.HasParameterOfType((ParameterIndex)1, "System.Type") && calledMethod.HasMetadataParametersCount(3)) 87|| (calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.MethodInfo") && calledMethod.HasMetadataParametersCount(2))) 92&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type") 98&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type") 104&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type") 110&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type") 116&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Type") 122&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Type") 128&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Type") 139&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.String") 152&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.BindingFlags") 170&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 177&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.BindingFlags") 184&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 191&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.BindingFlags") 198&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 205&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.BindingFlags") 212&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 219&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.BindingFlags") 227&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 229(calledMethod.HasMetadataParametersCount(2) && calledMethod.HasParameterOfType((ParameterIndex)2, "System.Reflection.BindingFlags")) || 230(calledMethod.HasMetadataParametersCount(3) && calledMethod.HasParameterOfType((ParameterIndex)3, "System.Reflection.BindingFlags"))) 237&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.BindingFlags") 244&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 246(calledMethod.HasMetadataParametersCount(2) && calledMethod.HasParameterOfType((ParameterIndex)2, "System.Boolean"))) 281&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 287&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.BindingFlags") 296&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Type") 305&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.Int32") 316&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type") 324&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.String") 325&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 333&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.String") 334&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 341&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 342&& calledMethod.HasParameterOfType((ParameterIndex)2, "System.String") 349&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 350&& calledMethod.HasParameterOfType((ParameterIndex)2, "System.String") 357&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 358&& calledMethod.HasParameterOfType((ParameterIndex)2, "System.String") 365&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 366&& calledMethod.HasParameterOfType((ParameterIndex)2, "System.String") 373&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 382&& calledMethod.HasParameterOfType((ParameterIndex)1, "System.String") 388&& (calledMethod.HasMetadataParametersCount(0) || calledMethod.HasParameterOfType((ParameterIndex)1, "System.Boolean")) 401&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.RuntimeTypeHandle") 413&& calledMethod.HasParameterOfType((ParameterIndex)0, "System.Type")
src\tools\illink\src\ILLink.Shared\TrimAnalysis\MethodParameterValue.cs (1)
30public ParameterIndex Index => Parameter.Index;
src\tools\illink\src\ILLink.Shared\TypeSystemProxy\MethodProxy.cs (3)
41/// See <see cref="ParameterIndex"/> for more info. 43internal partial ParameterProxy GetParameter(ParameterIndex index); 54internal bool HasParameterOfType(ParameterIndex parameterIndex, string fullTypeName)
src\tools\illink\src\ILLink.Shared\TypeSystemProxy\ParameterCollection.cs (2)
52public ParameterProxy Current => new ParameterProxy(_method, (ParameterIndex)_current); 54object IEnumerator.Current => new ParameterProxy(_method, (ParameterIndex)_current);
src\tools\illink\src\ILLink.Shared\TypeSystemProxy\ParameterProxy.cs (3)
14public ParameterProxy(MethodProxy method, ParameterIndex index) 24public ParameterIndex Index { get; } 49public bool IsImplicitThis => Method.HasImplicitThis() && Index == (ParameterIndex)0;
TrimAnalysis\FlowAnnotations.cs (4)
261return GetMethodParameterValue(new ParameterProxy(method, (ParameterIndex)0), dynamicallyAccessedMemberTypes); 268ParameterProxy param = new(method, (ParameterIndex)0); 270return GetMethodParameterValue(new ParameterProxy(method, (ParameterIndex)0), damt); 273internal MethodParameterValue GetMethodParameterValue(MethodProxy method, ParameterIndex parameterIndex, DynamicallyAccessedMemberTypes dynamicallyAccessedMemberTypes)
TrimAnalysis\MethodProxy.cs (1)
30internal partial ParameterProxy GetParameter(ParameterIndex index) => Method.GetParameter(index);
TrimAnalysis\ParameterProxy.cs (1)
15Index = (ParameterIndex)parameter.Ordinal +
TrimAnalysis\TrimAnalysisVisitor.cs (1)
157return new MethodParameterValue(new ParameterProxy(new(method), (ParameterIndex)0));