1 instantiation of FlowAnnotations
ILLink.RoslynAnalyzer (1)
TrimAnalysis\FlowAnnotations.cs (1)
18
private static readonly Lazy<FlowAnnotations> _instance = new(() => new
FlowAnnotations
(), isThreadSafe: true);
27 references to FlowAnnotations
ILLink.RoslynAnalyzer (27)
DynamicallyAccessedMembersAnalyzer.cs (6)
208
var overrideMethodReturnAnnotation =
FlowAnnotations
.GetMethodReturnValueAnnotation(overrideMethod);
209
var baseMethodReturnAnnotation =
FlowAnnotations
.GetMethodReturnValueAnnotation(baseMethod);
233
var baseParameterAnnotation =
FlowAnnotations
.GetMethodParameterAnnotation(baseParam);
234
var overrideParameterAnnotation =
FlowAnnotations
.GetMethodParameterAnnotation(overrideParam);
285
var overrideMethodThisAnnotation =
FlowAnnotations
.GetMethodParameterAnnotation(new ParameterProxy(new(overrideMethod), (ParameterIndex)0));
286
var baseMethodThisAnnotation =
FlowAnnotations
.GetMethodParameterAnnotation(new ParameterProxy(new(baseMethod), (ParameterIndex)0));
DynamicallyAccessedMembersTypeHierarchy.cs (3)
21
var annotation =
FlowAnnotations
.GetTypeAnnotation(type);
29
var baseAnnotation =
FlowAnnotations
.GetTypeAnnotation(baseType);
45
if (
FlowAnnotations
.GetTypeAnnotation(iface).HasFlag(annotationToApplyToInterfaces))
src\tools\illink\src\ILLink.Shared\TrimAnalysis\HandleCallAction.cs (1)
27
private readonly
FlowAnnotations
_annotations;
TrimAnalysis\FieldValue.cs (2)
15
: this(fieldSymbol, fieldSymbol.Type,
FlowAnnotations
.GetFieldAnnotation(fieldSymbol))
20
: this(propertySymbol, propertySymbol.Type,
FlowAnnotations
.GetBackingFieldAnnotation(propertySymbol))
TrimAnalysis\FlowAnnotations.cs (2)
18
private static readonly Lazy<
FlowAnnotations
> _instance = new(() => new FlowAnnotations(), isThreadSafe: true);
20
public static
FlowAnnotations
Instance { get => _instance.Value; }
TrimAnalysis\HandleCallAction.cs (6)
42
_annotations =
FlowAnnotations
.Instance;
154
AddReturnValue(
FlowAnnotations
.Instance.GetMethodReturnValue(calledMethod, _isNewObj, annotation));
159
AddReturnValue(
FlowAnnotations
.Instance.GetMethodReturnValue(calledMethod, _isNewObj));
183
AddReturnValue(
FlowAnnotations
.Instance.GetMethodReturnValue(calledMethod, _isNewObj, DynamicallyAccessedMemberTypes.PublicFields));
187
var annotation =
FlowAnnotations
.GetTypeAnnotation(staticType);
188
AddReturnValue(
FlowAnnotations
.Instance.GetMethodReturnValue(calledMethod, _isNewObj, annotation));
TrimAnalysis\MethodParameterValue.cs (1)
18
: this(parameter,
FlowAnnotations
.GetMethodParameterAnnotation(parameter)) { }
TrimAnalysis\MethodReturnValue.cs (1)
17
: this(methodSymbol, isNewObj,
FlowAnnotations
.GetMethodReturnValueAnnotation(methodSymbol))
TrimAnalysis\ReflectionAccessAnalyzer.cs (4)
160
if (
FlowAnnotations
.ShouldWarnWhenAccessedForReflection(member))
170
if (methodSymbol.IsVirtual &&
FlowAnnotations
.GetMethodReturnValueAnnotation(methodSymbol) != DynamicallyAccessedMemberTypes.None)
178
if (
FlowAnnotations
.GetMethodParameterAnnotation(parameter) != DynamicallyAccessedMemberTypes.None)
216
if (
FlowAnnotations
.GetFieldAnnotation(fieldSymbol) != DynamicallyAccessedMemberTypes.None)
TrimAnalysis\TrimAnalysisVisitor.cs (1)
165
return new MethodParameterValue(method, (ParameterIndex)0,
FlowAnnotations
.GetMethodParameterAnnotation(new ParameterProxy(new(method), (ParameterIndex)0)));