1 write to Method
ILLink.RoslynAnalyzer (1)
TrimAnalysis\MethodProxy.cs (1)
12public MethodProxy(IMethodSymbol method) => Method = method;
38 references to Method
ILLink.RoslynAnalyzer (38)
src\tools\illink\src\ILLink.Shared\TrimAnalysis\MethodParameterValue.cs (1)
24=> this.ValueToString(Parameter.Method.Method, Parameter.Index, DynamicallyAccessedMemberTypes);
TrimAnalysis\FlowAnnotations.cs (5)
148if (!param.Method.Method.ContainingType.IsTypeInterestingForDataflow(isByRef: false)) 150return param.Method.Method.GetDynamicallyAccessedMemberTypes(); 224=> RequiresDataFlowAnalysis(method.Method); 227=> new MethodReturnValue(method.Method, isNewObj, dynamicallyAccessedMemberTypes); 230=> GetMethodReturnValue(method, isNewObj, GetMethodReturnValueAnnotation(method.Method));
TrimAnalysis\HandleCallAction.cs (7)
196ITypeSymbol typeMapGroup = calledMethod.Method.TypeArguments[0]; 252if (!method.Method.IsConstructor()) 254var type = method.Method.ContainingType; 305=> _reflectionAccessAnalyzer.GetReflectionAccessDiagnosticsForMethod(_diagnosticContext.Location, method.Method); 312if (method.Method.MethodKind == MethodKind.PropertyGet || method.Method.MethodKind == MethodKind.PropertySet) 314var property = (IPropertySymbol)method.Method.AssociatedSymbol!;
TrimAnalysis\MethodParameterValue.cs (1)
29public IMethodSymbol MethodSymbol => Parameter.Method.Method;
TrimAnalysis\MethodProxy.cs (18)
16public string Name { get => Method.Name; } 18public string GetDisplayName() => Method.GetDisplayName(); 20internal partial bool IsDeclaredOnType(string fullTypeName) => IsTypeOf(Method.ContainingType, fullTypeName); 22internal partial bool HasMetadataParameters() => Method.Parameters.Length > 0; 24internal partial int GetMetadataParametersCount() => Method.GetMetadataParametersCount(); 26internal partial int GetParametersCount() => Method.GetParametersCount(); 28internal partial ParameterProxyEnumerable GetParameters() => Method.GetParameters(); 30internal partial ParameterProxy GetParameter(ParameterIndex index) => Method.GetParameter(index); 32internal partial bool HasGenericParameters() => Method.IsGenericMethod; 34internal partial bool HasGenericParametersCount(int genericParameterCount) => Method.TypeParameters.Length == genericParameterCount; 38if (Method.TypeParameters.IsEmpty) 41var builder = ImmutableArray.CreateBuilder<GenericParameterProxy>(Method.TypeParameters.Length); 42foreach (var typeParameter in Method.TypeParameters) 50internal partial bool IsConstructor() => Method.IsConstructor(); 52internal partial bool IsStatic() => Method.IsStatic; 54internal partial bool HasImplicitThis() => Method.HasImplicitThis(); 56internal partial bool ReturnsVoid() => Method.ReturnType.SpecialType == SpecialType.System_Void; 66public override string ToString() => Method.ToString();
TrimAnalysis\ParameterProxy.cs (6)
21return Method.Method.ContainingType.IsValueType 25switch (Method.Method.Parameters[MetadataIndex].RefKind) 32Debug.Fail($"Unexpected RefKind {Method.Method.Parameters[MetadataIndex].RefKind} found on parameter {GetDisplayName()}"); 40public IParameterSymbol? ParameterSymbol => IsImplicitThis ? null : Method.Method.Parameters[MetadataIndex]; 49? new TypeProxy(Method.Method.ContainingType) 50: new TypeProxy(Method.Method.Parameters[MetadataIndex].Type);