19 instantiations of ParameterProxy
ILLink.RoslynAnalyzer (19)
DynamicallyAccessedMembersAnalyzer.cs (2)
285var overrideMethodThisAnnotation = FlowAnnotations.GetMethodParameterAnnotation(new ParameterProxy(new(overrideMethod), (ParameterIndex)0)); 286var baseMethodThisAnnotation = FlowAnnotations.GetMethodParameterAnnotation(new ParameterProxy(new(baseMethod), (ParameterIndex)0));
IMethodSymbolExtensions.cs (1)
53return new ParameterProxy(new(method), index);
src\tools\illink\src\ILLink.Shared\TrimAnalysis\HandleCallAction.cs (8)
777var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (ParameterIndex)1), requiredMemberTypes); 840var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (ParameterIndex)0), DynamicallyAccessedMemberTypes.PublicParameterlessConstructor); 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), 1455var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (ParameterIndex)0), requiredMemberTypes); 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\TypeSystemProxy\ParameterCollection.cs (2)
52public ParameterProxy Current => new ParameterProxy(_method, (ParameterIndex)_current); 54object IEnumerator.Current => new ParameterProxy(_method, (ParameterIndex)_current);
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); 274=> new MethodParameterValue(new(method, parameterIndex), dynamicallyAccessedMemberTypes);
TrimAnalysis\TrimAnalysisVisitor.cs (2)
155return new MethodParameterValue(new ParameterProxy(new(method), (ParameterIndex)0)); 259return new MethodParameterValue(new ParameterProxy(parameter, parameter.ContainingSymbol as IMethodSymbol ?? (IMethodSymbol)OwningSymbol));
27 references to ParameterProxy
ILLink.RoslynAnalyzer (27)
DataFlow\LocalDataFlowVisitor.cs (1)
866foreach (var parameterProxy in calledMethod.GetParameters())
DynamicallyAccessedMembersAnalyzer.cs (2)
230foreach (var overrideParam in overrideMethod.GetMetadataParameters()) 232var baseParam = baseMethod.GetParameter(overrideParam.Index);
IMethodSymbolExtensions.cs (3)
38public static ParameterProxy GetParameter(this IMethodSymbol method, ParameterIndex index) 40if (method.TryGetParameter(index) is not ParameterProxy param) 49public static ParameterProxy? TryGetParameter(this IMethodSymbol method, ParameterIndex index)
src\tools\illink\src\ILLink.Shared\TrimAnalysis\FlowAnnotations.cs (2)
34internal partial MethodParameterValue GetMethodParameterValue(ParameterProxy param, DynamicallyAccessedMemberTypes dynamicallyAccessedMemberTypes); 36internal partial MethodParameterValue GetMethodParameterValue(ParameterProxy param);
src\tools\illink\src\ILLink.Shared\TrimAnalysis\HandleCallAction.cs (1)
1527foreach (var parameter in calledMethod.GetParameters())
src\tools\illink\src\ILLink.Shared\TrimAnalysis\MethodParameterValue.cs (1)
18public ParameterProxy Parameter { get; }
src\tools\illink\src\ILLink.Shared\TypeSystemProxy\MethodProxy.cs (2)
34/// Returns a List of <see cref="ParameterProxy"/> representing the parameters the method takes, including the implicit 'this' parameters. 43internal partial ParameterProxy GetParameter(ParameterIndex index);
src\tools\illink\src\ILLink.Shared\TypeSystemProxy\ParameterCollection.cs (5)
16internal readonly struct ParameterProxyEnumerable : IEnumerable<ParameterProxy> 33IEnumerator<ParameterProxy> IEnumerable<ParameterProxy>.GetEnumerator() => new ParameterEnumerator(_start, _end, _method); 37public struct ParameterEnumerator : IEnumerator<ParameterProxy> 52public ParameterProxy Current => new ParameterProxy(_method, (ParameterIndex)_current);
TrimAnalysis\FlowAnnotations.cs (6)
30foreach (var param in method.GetParameters()) 101foreach (var param in method.GetParameters()) 159internal static DynamicallyAccessedMemberTypes GetMethodParameterAnnotation(ParameterProxy param) 268ParameterProxy param = new(method, (ParameterIndex)0); 276internal partial MethodParameterValue GetMethodParameterValue(ParameterProxy param) 279internal partial MethodParameterValue GetMethodParameterValue(ParameterProxy param, DynamicallyAccessedMemberTypes dynamicallyAccessedMemberTypes)
TrimAnalysis\MethodParameterValue.cs (2)
12public MethodParameterValue(ParameterProxy parameter) 15public MethodParameterValue(ParameterProxy parameter, DynamicallyAccessedMemberTypes dynamicallyAccessedMemberTypes)
TrimAnalysis\MethodProxy.cs (1)
30internal partial ParameterProxy GetParameter(ParameterIndex index) => Method.GetParameter(index);
TrimAnalysis\ReflectionAccessAnalyzer.cs (1)
176foreach (var parameter in methodSymbol.GetParameters())