77 instantiations of MessageOrigin
illink (77)
Linker.Dataflow\CompilerGeneratedState.cs (4)
191
AddWarning(new
MessageOrigin
(method), DiagnosticId.MethodsAreAssociatedWithUserMethod, method.GetDisplayName(), alreadyAssociatedMethod.GetDisplayName(), generatedType.GetDisplayName());
250
AddWarning(new
MessageOrigin
(method), DiagnosticId.MethodsAreAssociatedWithStateMachine, method.GetDisplayName(), alreadyAssociatedMethod.GetDisplayName(), stateMachineType.GetDisplayName());
319
AddWarning(new
MessageOrigin
(userDefinedMethod), DiagnosticId.MethodsAreAssociatedWithUserMethod, userDefinedMethod.GetDisplayName(), alreadyAssociatedMethod.GetDisplayName(), nestedFunction.GetDisplayName());
349
AddWarning(new
MessageOrigin
(method), DiagnosticId.MethodsAreAssociatedWithUserMethod, method.GetDisplayName(), alreadyAssociatedMethod.GetDisplayName(), generatedType.GetDisplayName());
Linker.Dataflow\DynamicallyAccessedMembersTypeHierarchy.cs (1)
220
var origin = new
MessageOrigin
(type);
Linker.Dataflow\MethodBodyScanner.cs (2)
207
origin: new
MessageOrigin
(method.Method, ilOffset)));
966
origin: new
MessageOrigin
(methodIL.Method, operation.Offset)));
Linker.Dataflow\ReflectionMethodBodyScanner.cs (1)
89
_origin = new
MessageOrigin
(methodIL.Method);
Linker.Steps\CheckSuppressionsDispatcher.cs (1)
34
context.LogWarning(new
MessageOrigin
(source), DiagnosticId.RedundantSuppression, $"IL{suppression.SuppressMessageInfo.Id:0000}");
Linker.Steps\DiscoverCustomOperatorsHandler.cs (1)
90
Context.Annotations.Mark(method, new DependencyInfo(DependencyKind.PreservedOperator, method.DeclaringType), new
MessageOrigin
(method.DeclaringType));
Linker.Steps\LinkAttributesParser.cs (2)
317
var diagnosticContext = new DiagnosticContext(new
MessageOrigin
(provider), diagnosticsEnabled: true, _context);
376
var diagnosticContext = new DiagnosticContext(new
MessageOrigin
(provider), diagnosticsEnabled: true, _context);
Linker.Steps\MarkExportedTypesTargetStep.cs (1)
37
context.Annotations.Mark(type, new DependencyInfo(DependencyKind.ExportedType, exportedType), new
MessageOrigin
(assembly));
Linker.Steps\MarkStep.cs (34)
346
origin = origin.Provider is not null ? origin : new
MessageOrigin
(type);
362
MarkInterfaceImplementation(iface, new
MessageOrigin
(type));
430
var emptyOrigin = new
MessageOrigin
(null as ICustomAttributeProvider);
676
MarkType(type, new DependencyInfo(DependencyKind.DynamicInterfaceCastableImplementation, iface.InterfaceType), new
MessageOrigin
(Context.TryResolve(iface.InterfaceType)));
895
MessageOrigin providerOrigin = new
MessageOrigin
(providerMember);
1498
var assemblyOrigin = new
MessageOrigin
(assembly);
1579
markingHelpers.MarkForwardedScope(type, new
MessageOrigin
(assembly));
1584
markingHelpers.MarkForwardedScope(CreateTypeReferenceForExportedTypeTarget(exportedType), new
MessageOrigin
(assembly));
1595
markingHelpers.MarkForwardedScope(typeReference, new
MessageOrigin
(assembly));
1643
MessageOrigin assemblyOrigin = new
MessageOrigin
(assembly);
1847
origin = new
MessageOrigin
(member);
1892
var fieldOrigin = new
MessageOrigin
(field);
2062
var methodOrigin = new
MessageOrigin
(method);
2117
var fieldOrigin = new
MessageOrigin
(field);
2245
var typeOrigin = new
MessageOrigin
(type);
2666
MarkInterfaceImplementationList(impls, new
MessageOrigin
(type));
2888
MarkInterfaceImplementation(iface, new
MessageOrigin
(type));
3039
var typeOrigin = new
MessageOrigin
(type);
3275
MarkType(method.DeclaringType, new DependencyInfo(DependencyKind.DeclaringTypeOfCalledMethod, method), new
MessageOrigin
(reason.Source as IMemberDefinition ?? method));
3418
var methodOrigin = new
MessageOrigin
(method);
3595
var typeOrigin = new
MessageOrigin
(type);
3627
MarkInterfaceImplementationList(iface.ImplementationChain, new
MessageOrigin
(method.DeclaringType));
3690
var emptyOrigin = new
MessageOrigin
(null as ICustomAttributeProvider);
3823
var propertyOrigin = new
MessageOrigin
(prop);
3832
origin = reason.Source is IMemberDefinition member ? new
MessageOrigin
(member) : origin;
3842
var eventOrigin = new
MessageOrigin
(evt);
3961
MessageOrigin ilOrigin = new
MessageOrigin
(methodIL.Method);
3996
MarkInterfaceImplementation(implementation, new
MessageOrigin
(type));
4036
origin = new
MessageOrigin
(origin, instruction.Offset);
4058
origin = new
MessageOrigin
(origin, instruction.Offset);
4075
origin = new
MessageOrigin
(origin, instruction.Offset);
4133
origin = new
MessageOrigin
(origin, instruction.Offset);
4193
var nestedOrigin = new
MessageOrigin
(nestedFunction);
4202
var stateMachineOrigin = new
MessageOrigin
(method);
Linker.Steps\ProcessLinkerXmlBase.cs (2)
528
? new
MessageOrigin
(_xmlDocumentLocation, lineInfo.LineNumber, lineInfo.LinePosition, _resource?.Assembly)
529
: new
MessageOrigin
(_xmlDocumentLocation, 0, 0, _resource?.Assembly);
Linker.Steps\ProcessReferencesStep.cs (1)
50
Annotations.Mark(assembly.MainModule, new DependencyInfo(DependencyKind.AssemblyAction, assembly), new
MessageOrigin
(assembly));
Linker.Steps\RootAssemblyInputStep.cs (4)
27
var origin = new
MessageOrigin
(assembly);
139
Annotations.Mark(type, new DependencyInfo(DependencyKind.RootAssembly, type.Module.Assembly), new
MessageOrigin
(type.Module.Assembly));
156
Annotations.Mark(type, new DependencyInfo(DependencyKind.RootAssembly, type.Module.Assembly), new
MessageOrigin
(type.Module.Assembly));
171
var origin = new
MessageOrigin
(assembly);
Linker.Steps\UnsafeAccessorMarker.cs (5)
97
_context.MarkingHelpers.MarkMatchingExportedType(typeResolutionRecord.ResolvedType, typeResolutionRecord.ReferringAssembly, new DependencyInfo(DependencyKind.AccessedViaReflection, method), new
MessageOrigin
(method));
114
_context.MarkingHelpers.MarkMatchingExportedType(typeResolutionRecord.ResolvedType, typeResolutionRecord.ReferringAssembly, new DependencyInfo(DependencyKind.AccessedViaReflection, method), new
MessageOrigin
(method));
164
_markStep.MarkMethodVisibleToReflection(targetMethod, new DependencyInfo(DependencyKind.UnsafeAccessorTarget, method), new
MessageOrigin
(method));
189
_markStep.MarkMethodVisibleToReflection(targetMethod, new DependencyInfo(DependencyKind.UnsafeAccessorTarget, method), new
MessageOrigin
(method));
217
_markStep.MarkFieldVisibleToReflection(targetField, new DependencyInfo(DependencyKind.UnsafeAccessorTarget, method), new
MessageOrigin
(method));
Linker\Annotations.cs (2)
161
marked_pending.TryAdd(provider, new
MessageOrigin
(provider as ICustomAttributeProvider));
548
Mark(method, new DependencyInfo(DependencyKind.PreservedMethod, definition), new
MessageOrigin
(definition));
Linker\LinkContext.cs (5)
670
MessageOrigin _origin = new
MessageOrigin
(origin, ilOffset);
684
MessageOrigin _origin = new
MessageOrigin
(origin, ilOffset);
698
MessageOrigin _origin = new
MessageOrigin
(origin);
713
MessageOrigin _origin = new
MessageOrigin
(origin);
727
MessageOrigin _origin = new
MessageOrigin
(origin);
Linker\MessageOrigin.cs (1)
80
public MessageOrigin WithInstructionOffset(int ilOffset) => new
MessageOrigin
(this, ilOffset);
Linker\SerializationMarker.cs (6)
134
var origin = new
MessageOrigin
(provider);
201
_context.Annotations.Mark(type, typeReason, new
MessageOrigin
(reason.Source as ICustomAttributeProvider));
220
_context.Annotations.Mark(field, new DependencyInfo(DependencyKind.SerializedMember, type), new
MessageOrigin
(type));
237
_context.Annotations.Mark(get, new DependencyInfo(DependencyKind.SerializedMember, type), new
MessageOrigin
(type));
239
_context.Annotations.Mark(set, new DependencyInfo(DependencyKind.SerializedMember, type), new
MessageOrigin
(type));
252
_context.Annotations.Mark(method, new DependencyInfo(DependencyKind.SerializedMember, type), new
MessageOrigin
(type));
Linker\TypeMapHandler.cs (2)
114
_markStep.MarkCustomAttribute(entry.Attribute, info, new
MessageOrigin
(entry.Origin));
115
_markStep.MarkAssembly(entry.Origin, info, new
MessageOrigin
(entry.Origin));
Linker\UnconditionalSuppressMessageAttributeState.cs (2)
364
return new
MessageOrigin
(module.Assembly);
365
return new
MessageOrigin
(suppression.Provider);
234 references to MessageOrigin
illink (234)
Linker.Dataflow\AttributeDataFlow.cs (2)
18
readonly
MessageOrigin
_origin;
20
public AttributeDataFlow(LinkContext context, MarkStep markStep, in
MessageOrigin
origin)
Linker.Dataflow\CompilerGeneratedState.cs (3)
136
List<(
MessageOrigin
, DiagnosticId, string[])>? _warnings = null;
141
void AddWarning(
MessageOrigin
origin, DiagnosticId id, params string[] messageArgs)
143
_warnings ??= new List<(
MessageOrigin
, DiagnosticId, string[])>();
Linker.Dataflow\DiagnosticContext.cs (2)
10
public readonly
MessageOrigin
Origin;
14
public DiagnosticContext(in
MessageOrigin
origin, bool diagnosticsEnabled, LinkContext context)
Linker.Dataflow\DynamicallyAccessedMembersTypeHierarchy.cs (1)
220
var
origin = new MessageOrigin(type);
Linker.Dataflow\GenericArgumentDataFlow.cs (1)
16
public static void ProcessGenericArgumentDataFlow(in
MessageOrigin
origin, MarkStep markStep, LinkContext context, TypeReference type, bool suppressTrimAnalysisWarnings = false)
Linker.Dataflow\ReflectionMarker.cs (13)
29
internal void MarkTypeForDynamicallyAccessedMembers(in
MessageOrigin
origin, TypeReference type, DynamicallyAccessedMemberTypes requiredMemberTypes, DependencyKind dependencyKind, bool declaredOnly = false)
102
var
origin = diagnosticContext.Origin;
111
internal void MarkType(in
MessageOrigin
origin, TypeReference typeRef, DependencyKind dependencyKind = DependencyKind.AccessedViaReflection)
122
internal void MarkMethod(in
MessageOrigin
origin, MethodReference methodRef, DependencyKind dependencyKind = DependencyKind.AccessedViaReflection)
133
void MarkField(in
MessageOrigin
origin, FieldDefinition field, DependencyKind dependencyKind = DependencyKind.AccessedViaReflection)
141
internal void MarkProperty(in
MessageOrigin
origin, PropertyDefinition property, DependencyKind dependencyKind = DependencyKind.AccessedViaReflection)
149
void MarkEvent(in
MessageOrigin
origin, EventDefinition @event, DependencyKind dependencyKind = DependencyKind.AccessedViaReflection)
157
void MarkInterfaceImplementation(in
MessageOrigin
origin, InterfaceImplementation interfaceImplementation, DependencyKind dependencyKind = DependencyKind.AccessedViaReflection)
165
internal void MarkConstructorsOnType(in
MessageOrigin
origin, TypeReference typeRef, Func<MethodDefinition, bool>? filter, BindingFlags? bindingFlags = null)
177
internal void MarkFieldsOnTypeHierarchy(in
MessageOrigin
origin, TypeReference typeRef, Func<FieldDefinition, bool> filter, BindingFlags? bindingFlags = BindingFlags.Default)
189
internal void MarkPropertiesOnTypeHierarchy(in
MessageOrigin
origin, TypeReference typeRef, Func<PropertyDefinition, bool> filter, BindingFlags? bindingFlags = BindingFlags.Default)
201
internal void MarkEventsOnTypeHierarchy(in
MessageOrigin
origin, TypeReference typeRef, Func<EventDefinition, bool> filter, BindingFlags? bindingFlags = BindingFlags.Default)
213
internal void MarkStaticConstructor(in
MessageOrigin
origin, TypeReference typeRef)
Linker.Dataflow\ReflectionMethodBodyScanner.cs (3)
21
MessageOrigin
_origin;
69
public ReflectionMethodBodyScanner(LinkContext context, MarkStep parent,
MessageOrigin
origin)
223
var
origin = diagnosticContext.Origin;
Linker.Dataflow\TrimAnalysisAssignmentPattern.cs (2)
16
public
MessageOrigin
Origin { get; init; }
22
public TrimAnalysisAssignmentPattern(MultiValue source, MultiValue target,
MessageOrigin
origin, int? parameterIndex)
Linker.Dataflow\TrimAnalysisGenericInstantiationAccessPattern.cs (2)
13
public readonly
MessageOrigin
Origin;
15
internal TrimAnalysisGenericInstantiationAccessPattern(MemberReference memberReference,
MessageOrigin
origin)
Linker.Dataflow\TrimAnalysisMethodCallPattern.cs (2)
21
public readonly
MessageOrigin
Origin;
28
MessageOrigin
origin)
Linker.Dataflow\TrimAnalysisPatternStore.cs (6)
13
readonly Dictionary<(
MessageOrigin
, int?), TrimAnalysisAssignmentPattern> AssignmentPatterns;
14
readonly Dictionary<
MessageOrigin
, TrimAnalysisMethodCallPattern> MethodCallPatterns;
15
readonly Dictionary<(
MessageOrigin
, MemberReference), TrimAnalysisGenericInstantiationAccessPattern> GenericInstantiations;
21
AssignmentPatterns = new Dictionary<(
MessageOrigin
, int?), TrimAnalysisAssignmentPattern>();
22
MethodCallPatterns = new Dictionary<
MessageOrigin
, TrimAnalysisMethodCallPattern>();
23
GenericInstantiations = new Dictionary<(
MessageOrigin
, MemberReference), TrimAnalysisGenericInstantiationAccessPattern>();
Linker.Steps\CheckSuppressionsDispatcher.cs (1)
32
var
source = context.Suppressions.GetSuppressionOrigin(suppression);
Linker.Steps\DescriptorMarker.cs (3)
43
var
origin = GetMessageOriginForPosition(duplicatePosition);
196
var
origin = GetMessageOriginForPosition(nav);
216
var
origin = GetMessageOriginForPosition(nav);
Linker.Steps\LinkAttributesParser.cs (2)
41
(CustomAttribute[]? customAttributes,
MessageOrigin
[]? origins) ProcessAttributes(XPathNavigator nav, ICustomAttributeProvider provider)
44
ArrayBuilder<
MessageOrigin
> originsBuilder = default;
Linker.Steps\MarkStep.cs (125)
64
protected Dictionary<MethodDefinition,
MessageOrigin
> _interface_methods;
66
protected Queue<(AttributeProviderPair, DependencyInfo,
MessageOrigin
)> _lateMarkedAttributes;
67
protected List<(TypeDefinition,
MessageOrigin
)> _typesWithInterfaces;
70
protected List<(MethodBody,
MessageOrigin
)> _unreachableBodies;
227
_interface_methods = new Dictionary<MethodDefinition,
MessageOrigin
>();
229
_lateMarkedAttributes = new Queue<(AttributeProviderPair, DependencyInfo,
MessageOrigin
)>();
230
_typesWithInterfaces = new List<(TypeDefinition,
MessageOrigin
)>();
233
_unreachableBodies = new List<(MethodBody,
MessageOrigin
)>();
300
foreach ((var body,
var
_) in _unreachableBodies)
337
internal void MarkEntireType(TypeDefinition type, in DependencyInfo reason,
MessageOrigin
origin)
430
var
emptyOrigin = new MessageOrigin(null as ICustomAttributeProvider);
570
foreach ((var method,
var
origin) in _interface_methods)
588
(var type,
var
origin) = _typesWithInterfaces[i];
689
(var body,
var
origin) = _unreachableBodies[i];
699
void MarkMethodAsVirtual(MethodDefinition method,
MessageOrigin
origin)
708
void ProcessInterfaceMethod(MethodDefinition method,
MessageOrigin
origin)
769
void MarkOverrideForBaseMethod(OverrideInformation overrideInformation,
MessageOrigin
origin)
784
void MarkMethodIfNeededByBaseMethod(MethodDefinition method,
MessageOrigin
origin)
833
void ProcessDefaultImplementation(OverrideInformation ov,
MessageOrigin
origin)
843
void MarkMarshalSpec(IMarshalInfoProvider spec, in DependencyInfo reason,
MessageOrigin
origin)
860
void MarkCustomAttributes(ICustomAttributeProvider provider, in DependencyInfo reason,
MessageOrigin
origin)
895
MessageOrigin
providerOrigin = new MessageOrigin(providerMember);
928
protected virtual bool ProcessLinkerSpecialAttribute(CustomAttribute ca, ICustomAttributeProvider provider, in DependencyInfo reason,
MessageOrigin
origin)
952
void MarkDynamicDependency(DynamicDependency dynamicDependency, IMemberDefinition context,
MessageOrigin
origin)
1026
void MarkMembersVisibleToReflection(IEnumerable<IMetadataTokenProvider> members, in DependencyInfo reason,
MessageOrigin
origin)
1059
protected virtual void MarkUserDependency(IMemberDefinition context, CustomAttribute ca,
MessageOrigin
origin)
1138
bool MarkDependencyMethod(TypeDefinition type, string name, string[]? signature, in DependencyInfo reason,
MessageOrigin
origin)
1202
protected internal virtual void MarkCustomAttribute(CustomAttribute ca, in DependencyInfo reason,
MessageOrigin
origin)
1267
protected internal void MarkStaticConstructor(TypeDefinition type, in DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
1301
protected void MarkSecurityDeclarations(ISecurityDeclarationProvider provider, in DependencyInfo reason,
MessageOrigin
origin)
1312
protected virtual void MarkSecurityDeclaration(SecurityDeclaration sd, in DependencyInfo reason,
MessageOrigin
origin)
1321
protected virtual void MarkSecurityAttribute(SecurityAttribute sa, in DependencyInfo reason,
MessageOrigin
origin)
1337
protected void MarkCustomAttributeProperties(ICustomAttribute ca, TypeDefinition attribute,
MessageOrigin
origin)
1346
protected void MarkCustomAttributeProperty(CustomAttributeNamedArgument namedArgument, TypeDefinition attribute, ICustomAttribute ca, in DependencyInfo reason,
MessageOrigin
origin)
1376
protected void MarkCustomAttributeFields(ICustomAttribute ca, TypeDefinition attribute,
MessageOrigin
origin)
1385
protected void MarkCustomAttributeField(CustomAttributeNamedArgument namedArgument, TypeDefinition attribute, ICustomAttribute ca,
MessageOrigin
origin)
1430
void MarkCustomAttributeArguments(CustomAttribute ca,
MessageOrigin
origin)
1446
void MarkCustomAttributeArgument(CustomAttributeArgument argument, ICustomAttribute ca,
MessageOrigin
origin)
1489
public virtual void MarkAssembly(AssemblyDefinition assembly, DependencyInfo reason,
MessageOrigin
origin)
1498
var
assemblyOrigin = new MessageOrigin(assembly);
1539
void MarkEntireAssembly(AssemblyDefinition assembly,
MessageOrigin
origin)
1554
void MarkExportedTypes(AssemblyDefinition assembly,
MessageOrigin
origin)
1614
void ProcessModuleType(AssemblyDefinition assembly,
MessageOrigin
origin)
1643
MessageOrigin
assemblyOrigin = new MessageOrigin(assembly);
1696
var skippedItems = new List<(AttributeProviderPair, DependencyInfo,
MessageOrigin
)>();
1728
protected void MarkField(FieldReference reference, DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
1751
void ReportWarningsForReflectionAccess(in
MessageOrigin
origin, MethodDefinition method, DependencyKind dependencyKind, bool suppressTrimAnalysisWarnings)
1823
void ReportWarningsForTypeHierarchyReflectionAccess(IMemberDefinition member,
MessageOrigin
origin)
1868
void MarkField(FieldDefinition field, in DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
1892
var
fieldOrigin = new MessageOrigin(field);
1931
void ProcessAnalysisAnnotationsForField(FieldDefinition field, DependencyKind dependencyKind, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings)
1983
void MarkModule(ModuleDefinition module, DependencyInfo reason,
MessageOrigin
origin)
1998
protected virtual void MarkSerializable(TypeDefinition type,
MessageOrigin
origin)
2015
protected internal virtual void MarkTypeVisibleToReflection(TypeReference type, in DependencyInfo reason, in
MessageOrigin
origin)
2035
internal void MarkMethodVisibleToReflection(MethodReference method, in DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
2062
var
methodOrigin = new MessageOrigin(method);
2077
bool MarkMethodsVisibleToReflection(TypeDefinition type, in DependencyInfo reason,
MessageOrigin
origin)
2091
internal void MarkFieldVisibleToReflection(FieldReference field, in DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
2117
var
fieldOrigin = new MessageOrigin(field);
2127
bool MarkFieldsVisibleToReflection(TypeDefinition type, in DependencyInfo reason,
MessageOrigin
origin, bool markBackingFieldsOnlyIfPropertyMarked = false)
2152
internal void MarkPropertyVisibleToReflection(PropertyDefinition property, in DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
2163
internal void MarkEventVisibleToReflection(EventDefinition @event, in DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
2175
internal void MarkStaticConstructorVisibleToReflection(TypeDefinition type, in DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
2186
protected internal virtual TypeDefinition? MarkType(TypeReference reference, DependencyInfo reason,
MessageOrigin
origin)
2245
var
typeOrigin = new MessageOrigin(type);
2357
protected virtual void DoAdditionalTypeProcessing(TypeDefinition type,
MessageOrigin
origin)
2362
protected virtual void DoAdditionalFieldProcessing(FieldDefinition field,
MessageOrigin
origin)
2367
protected virtual void DoAdditionalPropertyProcessing(PropertyDefinition property,
MessageOrigin
origin)
2372
protected virtual void DoAdditionalEventProcessing(EventDefinition evt,
MessageOrigin
origin)
2377
protected virtual void DoAdditionalInstantiatedTypeProcessing(TypeDefinition type,
MessageOrigin
origin)
2398
void MarkTypeSpecialCustomAttributes(TypeDefinition type,
MessageOrigin
origin)
2435
void MarkMethodSpecialCustomAttributes(MethodDefinition method,
MessageOrigin
origin)
2451
void MarkXmlSchemaProvider(TypeDefinition type, CustomAttribute attribute,
MessageOrigin
origin)
2466
void MarkTypeWithDebuggerDisplayAttribute(TypeDefinition type, CustomAttribute attribute,
MessageOrigin
origin)
2488
void MarkTypeWithDebuggerDisplayAttributeValue(TypeDefinition type, CustomAttribute attribute, string? displayString,
MessageOrigin
origin)
2554
void MarkTypeWithDebuggerTypeProxyAttribute(TypeDefinition type, CustomAttribute attribute,
MessageOrigin
origin)
2596
protected int MarkNamedMethod(TypeDefinition type, string method_name, in DependencyInfo reason,
MessageOrigin
origin)
2614
void MarkSoapHeader(MethodDefinition method, CustomAttribute attribute,
MessageOrigin
origin)
2623
bool MarkNamedField(TypeDefinition type, string field_name, in DependencyInfo reason,
MessageOrigin
origin)
2640
void MarkNamedProperty(TypeDefinition type, string property_name, in DependencyInfo reason,
MessageOrigin
origin)
2693
void MarkGenericParameterProvider(IGenericParameterProvider provider,
MessageOrigin
origin)
2702
void MarkGenericParameter(GenericParameter parameter,
MessageOrigin
origin)
2812
protected internal bool MarkMethodsIf(Collection<MethodDefinition> methods, Func<MethodDefinition, bool> predicate, in DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
2826
protected MethodDefinition? MarkMethodIf(Collection<MethodDefinition> methods, Func<MethodDefinition, bool> predicate, in DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
2839
protected bool MarkDefaultConstructor(TypeDefinition type, in DependencyInfo reason,
MessageOrigin
origin)
2847
void MarkCustomMarshalerGetInstance(TypeDefinition type, in DependencyInfo reason,
MessageOrigin
origin)
2862
void MarkICustomMarshalerMethods(TypeDefinition inputType, in DependencyInfo reason,
MessageOrigin
origin)
2950
void MarkEventSourceProviders(TypeDefinition td,
MessageOrigin
origin)
2960
protected virtual void MarkMulticastDelegate(TypeDefinition type,
MessageOrigin
origin)
2965
protected (TypeReference, DependencyInfo) GetOriginalType(TypeReference type, DependencyInfo reason,
MessageOrigin
origin)
2994
void MarkParameters(FunctionPointerType fnptr,
MessageOrigin
origin)
3005
void MarkModifierType(IModifierType mod,
MessageOrigin
origin)
3010
void MarkGenericArguments(IGenericInstance instance,
MessageOrigin
origin)
3039
var
typeOrigin = new MessageOrigin(type);
3137
void ApplyPreserveMethods(TypeDefinition type,
MessageOrigin
origin)
3147
void ApplyPreserveMethods(MethodDefinition method,
MessageOrigin
origin)
3157
protected bool MarkFields(TypeDefinition type, bool includeStatic, in DependencyInfo reason,
MessageOrigin
origin)
3190
protected void MarkStaticFields(TypeDefinition type, in DependencyInfo reason,
MessageOrigin
origin)
3202
protected virtual bool MarkMethods(TypeDefinition type, in DependencyInfo reason,
MessageOrigin
origin)
3211
void MarkMethodCollection(IList<MethodDefinition> methods, in DependencyInfo reason,
MessageOrigin
origin)
3217
protected virtual MethodDefinition? MarkMethod(MethodReference reference, DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
3308
void ProcessAnalysisAnnotationsForMethod(MethodDefinition method, DependencyKind dependencyKind, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings)
3395
protected (MethodReference, DependencyInfo) GetOriginalMethod(MethodReference method, DependencyInfo reason,
MessageOrigin
origin)
3418
var
methodOrigin = new MessageOrigin(method);
3544
protected virtual void DoAdditionalMethodProcessing(MethodDefinition method,
MessageOrigin
origin)
3564
void MarkImplicitlyUsedFields(TypeDefinition type,
MessageOrigin
origin)
3595
var
typeOrigin = new MessageOrigin(type);
3633
void MarkNewCodeDependencies(MethodDefinition method,
MessageOrigin
origin)
3655
protected virtual void MarkAndCacheConvertToThrowExceptionCtor(DependencyInfo reason,
MessageOrigin
origin)
3690
var
emptyOrigin = new MessageOrigin(null as ICustomAttributeProvider);
3700
void MarkBaseMethods(MethodDefinition method,
MessageOrigin
origin)
3723
void ProcessInteropMethod(MethodDefinition method,
MessageOrigin
origin)
3823
var
propertyOrigin = new MessageOrigin(prop);
3830
protected internal virtual void MarkEvent(EventDefinition evt, in DependencyInfo reason,
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
3842
var
eventOrigin = new MessageOrigin(evt);
3847
internal void MarkMethodIfNotNull(MethodReference method, in DependencyInfo reason, in
MessageOrigin
origin, bool suppressTrimAnalysisWarnings = false)
3855
protected virtual void MarkMethodBody(MethodBody body,
MessageOrigin
origin)
3933
bool MarkAndCheckRequiresReflectionMethodBodyScanner(MethodIL methodIL,
MessageOrigin
origin)
3961
MessageOrigin
ilOrigin = new MessageOrigin(methodIL.Method);
4029
protected virtual void MarkInstruction(Instruction instruction, MethodDefinition method, ref bool requiresReflectionMethodBodyScanner, ref
MessageOrigin
origin)
4139
void MarkInterfaceImplementationList(List<InterfaceImplementation> ifaces,
MessageOrigin
origin, DependencyInfo? reason = null)
4147
protected internal virtual void MarkInterfaceImplementation(InterfaceImplementation iface,
MessageOrigin
origin, DependencyInfo? reason = null)
4177
protected virtual void MarkReflectionLikeDependencies(MethodIL methodIL, bool requiresReflectionMethodBodyScanner,
MessageOrigin
origin)
4193
var
nestedOrigin = new MessageOrigin(nestedFunction);
4202
var
stateMachineOrigin = new MessageOrigin(method);
Linker.Steps\ProcessLinkerXmlBase.cs (1)
525
protected
MessageOrigin
GetMessageOriginForPosition(XPathNavigator position)
Linker.Steps\RootAssemblyInputStep.cs (2)
27
var
origin = new MessageOrigin(assembly);
171
var
origin = new MessageOrigin(assembly);
Linker\Annotations.cs (13)
55
protected readonly Dictionary<IMetadataTokenProvider,
MessageOrigin
> marked_pending = new Dictionary<IMetadataTokenProvider,
MessageOrigin
>();
74
readonly List<(MethodDefinition Method,
MessageOrigin
Origin)> pending_reflection_visible_methods = new();
75
readonly List<(FieldDefinition Field,
MessageOrigin
Origin)> pending_reflection_visible_fields = new();
76
readonly List<(TypeDefinition Type,
MessageOrigin
Origin)> pending_reflection_visible_types = new();
164
public void Mark(IMetadataTokenProvider provider, in DependencyInfo reason, in
MessageOrigin
origin)
185
public KeyValuePair<IMetadataTokenProvider,
MessageOrigin
>[] GetMarkedPending()
252
internal void MarkPendingReflectionVisibleMethod(MethodDefinition method, in
MessageOrigin
origin)
258
internal void MarkPendingReflectionVisibleField(FieldDefinition field, in
MessageOrigin
origin)
264
internal void MarkPendingReflectionVisibleType(TypeDefinition type, in
MessageOrigin
origin)
267
internal (MethodDefinition Method,
MessageOrigin
Origin)[] DrainPendingReflectionVisibleMethods()
274
internal (FieldDefinition Field,
MessageOrigin
Origin)[] DrainPendingReflectionVisibleFields()
281
internal (TypeDefinition Type,
MessageOrigin
Origin)[] DrainPendingReflectionVisibleTypes()
Linker\AttributeInfo.cs (3)
16
public Dictionary<CustomAttribute,
MessageOrigin
> CustomAttributesOrigins { get; }
21
CustomAttributesOrigins = new Dictionary<CustomAttribute,
MessageOrigin
>();
24
public void AddCustomAttributes(ICustomAttributeProvider provider, CustomAttribute[] customAttributes,
MessageOrigin
[] origins)
Linker\CustomAttributeSource.cs (1)
90
public bool TryGetCustomAttributeOrigin(ICustomAttributeProvider provider, CustomAttribute customAttribute, out
MessageOrigin
origin)
Linker\LinkContext.cs (14)
637
public void LogWarning(string text, int code,
MessageOrigin
origin, string subcategory = MessageSubCategory.None)
652
public void LogWarning(
MessageOrigin
origin, DiagnosticId id, params string[] args)
668
internal void LogWarning(string text, int code, IMemberDefinition origin, int ilOffset =
MessageOrigin
.UnsetILOffset, string subcategory = MessageSubCategory.None)
670
MessageOrigin
_origin = new MessageOrigin(origin, ilOffset);
682
internal void LogWarning(IMemberDefinition origin, DiagnosticId id, int ilOffset =
MessageOrigin
.UnsetILOffset, params string[] args)
684
MessageOrigin
_origin = new MessageOrigin(origin, ilOffset);
698
MessageOrigin
_origin = new MessageOrigin(origin);
713
MessageOrigin
_origin = new MessageOrigin(origin);
727
MessageOrigin
_origin = new MessageOrigin(origin);
738
public void LogError(string text, int code, string subcategory = MessageSubCategory.None,
MessageOrigin
? origin = null)
750
public void LogError(
MessageOrigin
? origin, DiagnosticId id, params string[] args)
764
public static void FatalError(string text, int code, string subcategory = MessageSubCategory.None,
MessageOrigin
? origin = null)
778
public static void FatalError(string text, int code, Exception innerException, string subcategory = MessageSubCategory.None,
MessageOrigin
? origin = null)
792
public bool IsWarningSuppressed(int warningCode, string subcategory,
MessageOrigin
origin)
Linker\MarkingHelpers.cs (3)
17
public void MarkMatchingExportedType(TypeDefinition typeToMatch, AssemblyDefinition assembly, in DependencyInfo reason, in
MessageOrigin
origin)
26
public void MarkExportedType(ExportedType exportedType, ModuleDefinition module, in DependencyInfo reason, in
MessageOrigin
origin)
34
public void MarkForwardedScope(TypeReference typeReference, in
MessageOrigin
origin)
Linker\MessageContainer.cs (13)
22
public
MessageOrigin
? Origin { get; }
50
internal static MessageContainer CreateErrorMessage(string text, int code, string subcategory = MessageSubCategory.None,
MessageOrigin
? origin = null)
66
internal static MessageContainer CreateErrorMessage(
MessageOrigin
? origin, DiagnosticId id, params string[] args)
83
public static MessageContainer CreateCustomErrorMessage(string text, int code, string subcategory = MessageSubCategory.None,
MessageOrigin
? origin = null)
108
internal static MessageContainer CreateWarningMessage(LinkContext context, string text, int code,
MessageOrigin
origin, WarnVersion version, string subcategory = MessageSubCategory.None)
127
internal static MessageContainer CreateWarningMessage(LinkContext context,
MessageOrigin
origin, DiagnosticId id, WarnVersion version, params string[] args)
147
public static MessageContainer CreateCustomWarningMessage(LinkContext context, string text, int code,
MessageOrigin
origin, WarnVersion version, string subcategory = MessageSubCategory.None)
160
private static MessageContainer CreateWarningMessageContainer(LinkContext context, string text, int code,
MessageOrigin
origin, WarnVersion version, string subcategory = MessageSubCategory.None)
180
private static MessageContainer CreateWarningMessageContainer(LinkContext context,
MessageOrigin
origin, DiagnosticId id, WarnVersion version, string subcategory, params string[] args)
214
static bool TryLogSingleWarning(LinkContext context, int code,
MessageOrigin
origin, string subcategory)
258
internal static MessageContainer CreateInfoMessage(
MessageOrigin
origin, string text)
273
private MessageContainer(MessageCategory category, string text, int? code, string subcategory = MessageSubCategory.None,
MessageOrigin
? origin = null)
282
private MessageContainer(MessageCategory category, DiagnosticId id, string subcategory = MessageSubCategory.None,
MessageOrigin
? origin = null, params string[] args)
Linker\MessageOrigin.cs (12)
13
public readonly struct MessageOrigin : IComparable<
MessageOrigin
>, IEquatable<
MessageOrigin
>
62
public MessageOrigin(
MessageOrigin
other)
71
public MessageOrigin(
MessageOrigin
other, int ilOffset)
80
public
MessageOrigin
WithInstructionOffset(int ilOffset) => new MessageOrigin(this, ilOffset);
125
public bool Equals(
MessageOrigin
other) =>
128
public override bool Equals(object? obj) => obj is
MessageOrigin
messageOrigin && Equals(messageOrigin);
130
public static bool operator ==(
MessageOrigin
lhs,
MessageOrigin
rhs) => lhs.Equals(rhs);
131
public static bool operator !=(
MessageOrigin
lhs,
MessageOrigin
rhs) => !lhs.Equals(rhs);
133
public int CompareTo(
MessageOrigin
other)
Linker\SerializationMarker.cs (1)
134
var
origin = new MessageOrigin(provider);
Linker\UnconditionalSuppressMessageAttributeState.cs (3)
64
public bool IsSuppressed(int id,
MessageOrigin
warningOrigin, out SuppressMessageInfo info)
359
public
MessageOrigin
GetSuppressionOrigin(Suppression suppression)
361
if (_context.CustomAttributes.TryGetCustomAttributeOrigin(suppression.Provider, suppression.OriginAttribute, out
MessageOrigin
origin))