184 instantiations of DependencyInfo
illink (184)
Linker.Dataflow\ReflectionMarker.cs (9)
101
_markStep.MarkTypeVisibleToReflection(typeReference, new
DependencyInfo
(DependencyKind.AccessedViaReflection, origin.Provider), origin);
104
Context.MarkingHelpers.MarkMatchingExportedType(typeResolutionRecord.ResolvedType, typeResolutionRecord.ReferringAssembly, new
DependencyInfo
(DependencyKind.DynamicallyAccessedMember, typeReference), origin);
117
_markStep.MarkTypeVisibleToReflection(type, new
DependencyInfo
(dependencyKind, origin.Provider), origin);
128
_markStep.MarkMethodVisibleToReflection(method, new
DependencyInfo
(dependencyKind, origin.Provider), origin);
136
_markStep.MarkFieldVisibleToReflection(field, new
DependencyInfo
(dependencyKind, origin.Provider), origin);
144
_markStep.MarkPropertyVisibleToReflection(property, new
DependencyInfo
(dependencyKind, origin.Provider), origin);
152
_markStep.MarkEventVisibleToReflection(@event, new
DependencyInfo
(dependencyKind, origin.Provider), origin);
160
_markStep.MarkInterfaceImplementation(interfaceImplementation, origin, new
DependencyInfo
(dependencyKind, origin.Provider));
219
_markStep.MarkStaticConstructorVisibleToReflection(type, new
DependencyInfo
(DependencyKind.AccessedViaReflection, origin.Provider), origin);
Linker.Steps\DescriptorMarker.cs (8)
63
_context.MarkingHelpers.MarkExportedType(exportedType, assembly.MainModule, new
DependencyInfo
(DependencyKind.XmlDescriptor, assembly.MainModule), GetMessageOriginForPosition(nav));
99
_context.Annotations.Mark(type, new
DependencyInfo
(DependencyKind.XmlDescriptor, _xmlDocumentLocation), GetMessageOriginForPosition(nav));
111
_context.MarkingHelpers.MarkExportedType(exported, assembly.MainModule, new
DependencyInfo
(DependencyKind.XmlDescriptor, _xmlDocumentLocation), GetMessageOriginForPosition(nav));
121
_context.MarkingHelpers.MarkExportedType(currentType, assembly.MainModule, new
DependencyInfo
(DependencyKind.DeclaringType, currentType), GetMessageOriginForPosition(nav));
165
_context.Annotations.Mark(type, new
DependencyInfo
(DependencyKind.XmlDescriptor, _xmlDocumentLocation), GetMessageOriginForPosition(nav));
173
_context.Annotations.Mark(parent, new
DependencyInfo
(DependencyKind.DeclaringType, currentType), GetMessageOriginForPosition(nav));
195
var reason = new
DependencyInfo
(DependencyKind.XmlDescriptor, _xmlDocumentLocation);
215
var reason = new
DependencyInfo
(DependencyKind.XmlDescriptor, _xmlDocumentLocation);
Linker.Steps\DiscoverCustomOperatorsHandler.cs (1)
90
Context.Annotations.Mark(method, new
DependencyInfo
(DependencyKind.PreservedOperator, method.DeclaringType), new MessageOrigin(method.DeclaringType));
Linker.Steps\MarkExportedTypesTargetStep.cs (1)
37
context.Annotations.Mark(type, new
DependencyInfo
(DependencyKind.ExportedType, exportedType), new MessageOrigin(assembly));
Linker.Steps\MarkStep.cs (131)
353
MarkEntireType(nested, new
DependencyInfo
(DependencyKind.NestedType, type), origin);
366
MarkFieldsVisibleToReflection(type, new
DependencyInfo
(DependencyKind.MemberOfType, type), origin);
367
MarkMethodsVisibleToReflection(type, new
DependencyInfo
(DependencyKind.MemberOfType, type), origin);
373
MarkPropertyVisibleToReflection(property, new
DependencyInfo
(DependencyKind.MemberOfType, type), origin);
381
MarkEventVisibleToReflection(ev, new
DependencyInfo
(DependencyKind.MemberOfType, type), origin);
443
MarkAssembly(assembly, new
DependencyInfo
(DependencyKind.AssemblyAction, null), emptyOrigin);
675
MarkType(type, new
DependencyInfo
(DependencyKind.DynamicInterfaceCastableImplementation, iface.InterfaceType), new MessageOrigin(Context.TryResolve(iface.InterfaceType)));
718
MarkMethod(dimInfo.Override, new
DependencyInfo
(DependencyKind.Override, dimInfo.Base), origin);
728
MarkMethod(ov.Override, new
DependencyInfo
(DependencyKind.Override, ov.Base), origin);
773
MarkMethod(overrideInformation.Override, new
DependencyInfo
(DependencyKind.OverrideOnInstantiatedType, overrideInformation.Override.DeclaringType), origin);
779
MarkMethod(overrideInformation.Override, new
DependencyInfo
(DependencyKind.Override, overrideInformation.Base), origin);
980
MarkingHelpers.MarkMatchingExportedType(type, assembly, new
DependencyInfo
(DependencyKind.DynamicDependency, type), origin);
1022
MarkMembersVisibleToReflection(members, new
DependencyInfo
(DependencyKind.DynamicDependency, context), origin);
1093
MarkingHelpers.MarkMatchingExportedType(td, assemblyDef, new
DependencyInfo
(DependencyKind.PreservedDependency, ca), origin);
1121
MarkEntireType(td, new
DependencyInfo
(DependencyKind.PreservedDependency, ca), origin);
1127
if (MarkDependencyMethod(td, member, signature, new
DependencyInfo
(DependencyKind.PreservedDependency, ca), origin))
1130
if (MarkNamedField(td, member, new
DependencyInfo
(DependencyKind.PreservedDependency, ca), origin))
1204
MarkMethod(ca.Constructor, new
DependencyInfo
(DependencyKind.AttributeConstructor, ca), origin);
1331
MarkType(security_type, new
DependencyInfo
(DependencyKind.AttributeType, sa), origin);
1342
MarkCustomAttributeProperty(named_argument, attribute, ca, new
DependencyInfo
(DependencyKind.AttributeProperty, ca), origin);
1388
MarkField(field, new
DependencyInfo
(DependencyKind.CustomAttributeField, ca), origin);
1453
MarkType(et, new
DependencyInfo
(DependencyKind.CustomAttributeArgumentType, ca), origin);
1470
MarkType(argument.Type, new
DependencyInfo
(DependencyKind.CustomAttributeArgumentType, ca), origin);
1471
MarkType((TypeReference)argument.Value, new
DependencyInfo
(DependencyKind.CustomAttributeArgumentValue, ca), origin);
1476
MarkType(boxed_value.Type, new
DependencyInfo
(DependencyKind.CustomAttributeArgumentType, ca), origin);
1532
MarkSecurityDeclarations(assembly, new
DependencyInfo
(DependencyKind.AssemblyOrModuleAttribute, assembly), assemblyOrigin);
1544
MarkCustomAttributes(assembly, new
DependencyInfo
(DependencyKind.AssemblyOrModuleAttribute, assembly), origin);
1545
MarkCustomAttributes(module, new
DependencyInfo
(DependencyKind.AssemblyOrModuleAttribute, module), origin);
1548
MarkEntireType(type, new
DependencyInfo
(DependencyKind.TypeInAssembly, assembly), origin);
1557
MarkingHelpers.MarkExportedType(exportedType, module, new
DependencyInfo
(DependencyKind.ExportedType, assembly), origin);
1618
MarkType(moduleType, new
DependencyInfo
(DependencyKind.TypeInAssembly, assembly), origin);
1660
MarkCustomAttribute(customAttribute, new
DependencyInfo
(DependencyKind.AssemblyOrModuleAttribute, assemblyLevelAttribute.Provider), assemblyOrigin);
1734
MarkType(reference.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, reference), origin);
1737
reason = new
DependencyInfo
(DependencyKind.FieldOnGenericInstance, reference);
1886
MarkType(field.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, field), origin);
1889
MarkType(field.FieldType, new
DependencyInfo
(DependencyKind.FieldType, field), fieldOrigin);
1890
MarkCustomAttributes(field, new
DependencyInfo
(DependencyKind.CustomAttribute, field), fieldOrigin);
1891
MarkMarshalSpec(field, new
DependencyInfo
(DependencyKind.FieldMarshalSpec, field), fieldOrigin);
1920
DependencyKind.FieldAccess => new
DependencyInfo
(DependencyKind.TriggersCctorThroughFieldAccess, reason.Source),
1921
_ => new
DependencyInfo
(DependencyKind.CctorForField, field)
1988
MarkAssembly(module.Assembly, new
DependencyInfo
(DependencyKind.AssemblyOfModule, module), origin);
2001
MarkDefaultConstructor(type, new
DependencyInfo
(DependencyKind.SerializationMethodForType, type), origin);
2002
MarkMethodsIf(type.Methods, IsSpecialSerializationConstructor, new
DependencyInfo
(DependencyKind.SerializationMethodForType, type), origin);
2005
MarkMethodsIf(type.Methods, HasOnSerializeOrDeserializeAttribute, new
DependencyInfo
(DependencyKind.SerializationMethodForType, type), origin);
2039
MarkTypeVisibleToReflection(methodDefinition.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, methodDefinition), origin);
2077
MarkTypeVisibleToReflection(fieldDefinition.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, fieldDefinition), origin);
2180
MarkStaticConstructor(type, new
DependencyInfo
(DependencyKind.TriggersCctorForCalledMethod, reason.Source), origin);
2202
MarkModule(module, new
DependencyInfo
(DependencyKind.ScopeOfType, type), origin);
2209
MarkType(type.BaseType, new
DependencyInfo
(DependencyKind.BaseType, type), typeOrigin);
2217
MarkType(type.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, type), typeOrigin);
2218
MarkCustomAttributes(type, new
DependencyInfo
(DependencyKind.CustomAttribute, type), typeOrigin);
2219
MarkSecurityDeclarations(type, new
DependencyInfo
(DependencyKind.CustomAttribute, type), typeOrigin);
2227
MarkMethodIf(type.Methods, static m => m.Name == "Finalize", new
DependencyInfo
(DependencyKind.MethodForSpecialType, type), typeOrigin);
2288
MarkMethod(method, new
DependencyInfo
(DependencyKind.VirtualNeededDueToPreservedScope, type), typeOrigin);
2293
MarkStaticConstructor(type, new
DependencyInfo
(DependencyKind.CctorForType, type), typeOrigin);
2387
if (MarkMethodsIf(type.Methods, MethodDefinitionExtensions.IsPublicInstancePropertyMethod, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, type), origin))
2388
Tracer.AddDirectDependency(attribute, new
DependencyInfo
(DependencyKind.CustomAttribute, type), marked: false);
2414
Tracer.AddDirectDependency(attribute, new
DependencyInfo
(DependencyKind.CustomAttribute, type), marked: false);
2415
MarkNamedMethod(type, name, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2431
Tracer.AddDirectDependency(attribute, new
DependencyInfo
(DependencyKind.CustomAttribute, type), marked: false);
2478
MarkMethodVisibleToReflection(method, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2487
MarkFieldVisibleToReflection(field, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2494
MarkPropertyVisibleToReflection(property, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2503
MarkMethodsVisibleToReflection(type, new
DependencyInfo
(DependencyKind.KeptForSpecialAttribute, attribute), origin);
2504
MarkFieldsVisibleToReflection(type, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2532
Tracer.AddDirectDependency(attribute, new
DependencyInfo
(DependencyKind.CustomAttribute, type), marked: false);
2533
MarkType(proxyTypeReference, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2537
MarkMethodsVisibleToReflection(proxyType, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2538
MarkFieldsVisibleToReflection(proxyType, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2578
MarkNamedField(method.DeclaringType, member_name, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2579
MarkNamedProperty(method.DeclaringType, member_name, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2663
MarkCustomAttributes(parameter, new
DependencyInfo
(DependencyKind.GenericParameterCustomAttribute, parameter.Owner), origin);
2669
MarkCustomAttributes(constraint, new
DependencyInfo
(DependencyKind.GenericParameterConstraintCustomAttribute, parameter.Owner), origin);
2670
MarkType(constraint.ConstraintType, new
DependencyInfo
(DependencyKind.GenericParameterConstraintType, parameter.Owner), origin);
2915
MarkStaticFields(nestedType, new
DependencyInfo
(DependencyKind.EventSourceProviderField, td), origin);
2921
MarkMethodsIf(type.Methods, m => m.Name == ".ctor" || m.Name == "Invoke", new
DependencyInfo
(DependencyKind.MethodForSpecialType, type), origin);
2940
MarkType(fnptr.ReturnType, new
DependencyInfo
(DependencyKind.ReturnType, fnptr), origin);
2947
(type, reason) = (specification.ElementType, new
DependencyInfo
(DependencyKind.ElementType, specification));
2960
MarkType(fnptr.Parameters[i].ParameterType, new
DependencyInfo
(DependencyKind.ParameterType, fnptr), origin);
2966
MarkType(mod.ModifierType, new
DependencyInfo
(DependencyKind.ModifierType, mod), origin);
2977
var argumentTypeDef = MarkType(argument, new
DependencyInfo
(DependencyKind.GenericArgumentType, instance), origin);
3005
var di = new
DependencyInfo
(DependencyKind.TypePreserve, type);
3027
var di = new
DependencyInfo
(DependencyKind.TypePreserve, type);
3103
MarkMethodCollection(list, new
DependencyInfo
(DependencyKind.PreservedMethod, type), origin);
3113
MarkMethodCollection(list, new
DependencyInfo
(DependencyKind.PreservedMethod, method), origin);
3183
MarkType(reference.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, reference), origin);
3196
MarkType(reference.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, reference), origin);
3198
reason = new
DependencyInfo
(DependencyKind.MethodOnGenericInstance, reference);
3234
MarkType(method.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringTypeOfCalledMethod, method), new MessageOrigin(reason.Source as IMemberDefinition ?? method));
3241
MarkEvent(@event, new
DependencyInfo
(kind, originalReason.Source), origin);
3364
(method, reason) = (specification.ElementMethod, new
DependencyInfo
(DependencyKind.ElementMethod, specification));
3388
MarkType(method.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, method), methodOrigin);
3389
MarkCustomAttributes(method, new
DependencyInfo
(DependencyKind.CustomAttribute, method), methodOrigin);
3390
MarkSecurityDeclarations(method, new
DependencyInfo
(DependencyKind.CustomAttribute, method), methodOrigin);
3397
Tracer.AddDirectDependency(method.DeclaringType, new
DependencyInfo
(DependencyKind.InstantiatedByCtor, method), marked: false);
3410
MarkProperty(property, new
DependencyInfo
(PropagateDependencyKindToAccessors(reason.Kind, DependencyKind.PropertyOfPropertyMethod), method));
3417
MarkType(pd.ParameterType, new
DependencyInfo
(DependencyKind.ParameterType, method), methodOrigin);
3418
MarkCustomAttributes(pd, new
DependencyInfo
(DependencyKind.ParameterAttribute, method), methodOrigin);
3419
MarkMarshalSpec(pd, new
DependencyInfo
(DependencyKind.ParameterMarshalSpec, method), methodOrigin);
3442
MarkMethod(@base, new
DependencyInfo
(DependencyKind.MethodImplOverride, method), methodOrigin);
3465
MarkType(method.ReturnType, new
DependencyInfo
(DependencyKind.ReturnType, method), methodOrigin);
3466
MarkCustomAttributes(method.MethodReturnType, new
DependencyInfo
(DependencyKind.ReturnTypeAttribute, method), methodOrigin);
3467
MarkMarshalSpec(method.MethodReturnType, new
DependencyInfo
(DependencyKind.ReturnTypeMarshalSpec, method), methodOrigin);
3493
MarkMethodIf(declaringType.Methods, m => m.Name == methodPair, new
DependencyInfo
(DependencyKind.MethodForSpecialType, declaringType), methodOrigin);
3530
MarkFields(type, includeStatic: type.IsEnum, reason: new
DependencyInfo
(DependencyKind.MemberOfType, type), origin);
3603
if (!MarkDefaultConstructor(baseType, new
DependencyInfo
(DependencyKind.BaseDefaultCtorForStubbedMethod, method), origin))
3609
MarkAndCacheConvertToThrowExceptionCtor(new
DependencyInfo
(DependencyKind.UnreachableBodyRequirement, method), origin);
3652
var ctor = MarkMethodIf(disablePrivateReflection.Methods, MethodDefinitionExtensions.IsDefaultConstructor, new
DependencyInfo
(DependencyKind.DisablePrivateReflectionRequirement, disablePrivateReflection), emptyOrigin);
3677
MarkMethod(ov.Base, new
DependencyInfo
(DependencyKind.BaseMethod, method), origin);
3687
Annotations.MarkProcessed(pii.Module, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method));
3707
MarkDefaultConstructor(returnTypeDefinition, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method), origin);
3708
MarkFields(returnTypeDefinition, includeStaticFields, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method), origin);
3715
MarkFields(method.DeclaringType, includeStaticFields, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method), origin);
3732
MarkFields(paramTypeDefinition, includeStaticFields, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method), origin);
3735
MarkDefaultConstructor(paramTypeDefinition, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method), origin);
3785
MarkCustomAttributes(prop, new
DependencyInfo
(DependencyKind.CustomAttribute, prop), propertyOrigin);
3794
MarkMethodIfNotNull(evt.AddMethod, new
DependencyInfo
(dependencyKind, evt), origin);
3795
MarkMethodIfNotNull(evt.InvokeMethod, new
DependencyInfo
(dependencyKind, evt), origin);
3796
MarkMethodIfNotNull(evt.RemoveMethod, new
DependencyInfo
(dependencyKind, evt), origin);
3802
MarkCustomAttributes(evt, new
DependencyInfo
(DependencyKind.CustomAttribute, evt), eventOrigin);
3820
MarkAndCacheConvertToThrowExceptionCtor(new
DependencyInfo
(DependencyKind.UnreachableBodyRequirement, body.Method), origin);
3912
MarkType(var.VariableType, new
DependencyInfo
(DependencyKind.VariableType, methodIL.Method), origin);
3916
MarkType(eh.CatchType, new
DependencyInfo
(DependencyKind.CatchType, methodIL.Method), origin);
3996
MarkField((FieldReference)instruction.Operand, new
DependencyInfo
(DependencyKind.FieldAccess, method), origin);
4020
MarkMethodVisibleToReflection(methodReference, new
DependencyInfo
(dependencyKind, method), origin);
4024
MarkMethod(methodReference, new
DependencyInfo
(dependencyKind, method), origin);
4033
var reason = new
DependencyInfo
(DependencyKind.Ldtoken, method);
4093
MarkType(operand, new
DependencyInfo
(DependencyKind.InstructionTypeRef, method), origin);
4110
Annotations.MarkProcessed(iface, reason ?? new
DependencyInfo
(DependencyKind.InterfaceImplementationOnType, origin.Provider));
4114
MarkCustomAttributes(iface, new
DependencyInfo
(DependencyKind.CustomAttribute, iface), origin);
4116
MarkType(iface.InterfaceType, reason ?? new
DependencyInfo
(DependencyKind.InterfaceImplementationInterfaceType, iface), origin);
Linker.Steps\ProcessReferencesStep.cs (1)
50
Annotations.Mark(assembly.MainModule, new
DependencyInfo
(DependencyKind.AssemblyAction, assembly), new MessageOrigin(assembly));
Linker.Steps\ReflectionBlockedStep.cs (1)
83
Annotations.Mark(ca, new
DependencyInfo
(DependencyKind.DisablePrivateReflection, ca));
Linker.Steps\RootAssemblyInputStep.cs (5)
26
var di = new
DependencyInfo
(DependencyKind.RootAssembly, 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));
170
var di = new
DependencyInfo
(DependencyKind.RootAssembly, assembly);
193
Context.Annotations.Mark(attribute, new
DependencyInfo
(DependencyKind.RootAssembly, 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 (1)
548
Mark(method, new
DependencyInfo
(DependencyKind.PreservedMethod, definition), new MessageOrigin(definition));
Linker\DependencyInfo.cs (3)
158
public static readonly DependencyInfo Unspecified = new
DependencyInfo
(DependencyKind.Unspecified, null);
159
public static readonly DependencyInfo AlreadyMarked = new
DependencyInfo
(DependencyKind.AlreadyMarked, null);
160
public static readonly DependencyInfo DisablePrivateReflectionRequirement = new
DependencyInfo
(DependencyKind.DisablePrivateReflectionRequirement, null);
Linker\MarkingHelpers.cs (1)
45
MarkExportedType(exportedType, assembly.MainModule, new
DependencyInfo
(DependencyKind.ExportedType, typeReference), origin);
Linker\SerializationMarker.cs (10)
133
var reason = new
DependencyInfo
(ToDependencyKind(serializerKind), provider);
188
MarkRecursiveMembersInternal(argType, new
DependencyInfo
(DependencyKind.GenericArgumentType, typeRef));
191
typeReason = new
DependencyInfo
(DependencyKind.ElementType, typeRef);
209
MarkRecursiveMembersInternal(type.BaseType, new
DependencyInfo
(DependencyKind.SerializedRecursiveType, type));
219
MarkRecursiveMembersInternal(field.FieldType, new
DependencyInfo
(DependencyKind.SerializedRecursiveType, type));
220
_context.Annotations.Mark(field, new
DependencyInfo
(DependencyKind.SerializedMember, type), new MessageOrigin(type));
235
MarkRecursiveMembersInternal(property.PropertyType, new
DependencyInfo
(DependencyKind.SerializedRecursiveType, 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 (7)
80
MarkTypeMapAttribute(entry, new
DependencyInfo
(DependencyKind.TypeMapEntry, callingMethod));
100
MarkTypeMapAttribute(entry, new
DependencyInfo
(DependencyKind.TypeMapEntry, callingMethod));
137
MarkTypeMapAttribute(entry, new
DependencyInfo
(DependencyKind.TypeMapAssemblyTarget, callingMethod));
155
MarkTypeMapAttribute(attr, new
DependencyInfo
(DependencyKind.TypeMapAssemblyTarget, callingMethod));
179
MarkTypeMapAttribute(attr, new
DependencyInfo
(DependencyKind.TypeMapEntry, targetType));
266
MarkTypeMapAttribute(attr, new
DependencyInfo
(DependencyKind.TypeMapEntry, null));
286
MarkTypeMapAttribute(attr, new
DependencyInfo
(DependencyKind.TypeMapEntry, dependencySource));
96 references to DependencyInfo
illink (96)
Linker.Steps\DescriptorMarker.cs (2)
195
var
reason = new DependencyInfo(DependencyKind.XmlDescriptor, _xmlDocumentLocation);
215
var
reason = new DependencyInfo(DependencyKind.XmlDescriptor, _xmlDocumentLocation);
Linker.Steps\MarkStep.cs (69)
63
protected Queue<(MethodDefinition,
DependencyInfo
)> _methods;
66
protected Queue<(AttributeProviderPair,
DependencyInfo
, MessageOrigin)> _lateMarkedAttributes;
225
_methods = new Queue<(MethodDefinition,
DependencyInfo
)>();
228
_lateMarkedAttributes = new Queue<(AttributeProviderPair,
DependencyInfo
, MessageOrigin)>();
336
internal void MarkEntireType(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
480
MarkType(type,
DependencyInfo
.AlreadyMarked, pending.Value);
483
MarkMethod(method,
DependencyInfo
.AlreadyMarked, pending.Value);
487
MarkField(field,
DependencyInfo
.AlreadyMarked, pending.Value);
490
MarkModule(module,
DependencyInfo
.AlreadyMarked, pending.Value);
510
MarkMethodVisibleToReflection(method,
DependencyInfo
.AlreadyMarked, origin);
516
MarkFieldVisibleToReflection(field,
DependencyInfo
.AlreadyMarked, origin);
522
MarkTypeVisibleToReflection(type,
DependencyInfo
.AlreadyMarked, origin);
552
(MethodDefinition method,
DependencyInfo
reason) = _methods.Dequeue();
562
protected virtual void EnqueueMethod(MethodDefinition method, in
DependencyInfo
reason)
842
void MarkMarshalSpec(IMarshalInfoProvider spec, in
DependencyInfo
reason, MessageOrigin origin)
859
void MarkCustomAttributes(ICustomAttributeProvider provider, in
DependencyInfo
reason, MessageOrigin origin)
927
protected virtual bool ProcessLinkerSpecialAttribute(CustomAttribute ca, ICustomAttributeProvider provider, in
DependencyInfo
reason, MessageOrigin origin)
1025
void MarkMembersVisibleToReflection(IEnumerable<IMetadataTokenProvider> members, in
DependencyInfo
reason, MessageOrigin origin)
1137
bool MarkDependencyMethod(TypeDefinition type, string name, string[]? signature, in
DependencyInfo
reason, MessageOrigin origin)
1201
protected internal virtual void MarkCustomAttribute(CustomAttribute ca, in
DependencyInfo
reason, MessageOrigin origin)
1266
protected internal void MarkStaticConstructor(TypeDefinition type, in
DependencyInfo
reason, in MessageOrigin origin)
1300
protected void MarkSecurityDeclarations(ISecurityDeclarationProvider provider, in
DependencyInfo
reason, MessageOrigin origin)
1311
protected virtual void MarkSecurityDeclaration(SecurityDeclaration sd, in
DependencyInfo
reason, MessageOrigin origin)
1320
protected virtual void MarkSecurityAttribute(SecurityAttribute sa, in
DependencyInfo
reason, MessageOrigin origin)
1345
protected void MarkCustomAttributeProperty(CustomAttributeNamedArgument namedArgument, TypeDefinition attribute, ICustomAttribute ca, in
DependencyInfo
reason, MessageOrigin origin)
1488
public virtual void MarkAssembly(AssemblyDefinition assembly,
DependencyInfo
reason, MessageOrigin origin)
1695
var skippedItems = new List<(AttributeProviderPair,
DependencyInfo
, MessageOrigin)>();
1727
protected void MarkField(FieldReference reference,
DependencyInfo
reason, in MessageOrigin origin)
1864
void MarkField(FieldDefinition field, in
DependencyInfo
reason, in MessageOrigin origin)
1917
var
cctorReason = reason.Kind switch
1976
void MarkModule(ModuleDefinition module,
DependencyInfo
reason, MessageOrigin origin)
2008
protected internal virtual void MarkTypeVisibleToReflection(TypeReference type, in
DependencyInfo
reason, in MessageOrigin origin)
2028
internal void MarkMethodVisibleToReflection(MethodReference method, in
DependencyInfo
reason, in MessageOrigin origin)
2053
bool MarkMethodsVisibleToReflection(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
2067
internal void MarkFieldVisibleToReflection(FieldReference field, in
DependencyInfo
reason, in MessageOrigin origin)
2086
bool MarkFieldsVisibleToReflection(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin, bool markBackingFieldsOnlyIfPropertyMarked = false)
2111
internal void MarkPropertyVisibleToReflection(PropertyDefinition property, in
DependencyInfo
reason, in MessageOrigin origin)
2122
internal void MarkEventVisibleToReflection(EventDefinition @event, in
DependencyInfo
reason, in MessageOrigin origin)
2134
internal void MarkStaticConstructorVisibleToReflection(TypeDefinition type, in
DependencyInfo
reason, in MessageOrigin origin)
2145
protected internal virtual TypeDefinition? MarkType(TypeReference reference,
DependencyInfo
reason, MessageOrigin origin)
2555
protected int MarkNamedMethod(TypeDefinition type, string method_name, in
DependencyInfo
reason, MessageOrigin origin)
2582
bool MarkNamedField(TypeDefinition type, string field_name, in
DependencyInfo
reason, MessageOrigin origin)
2599
void MarkNamedProperty(TypeDefinition type, string property_name, in
DependencyInfo
reason, MessageOrigin origin)
2771
protected internal bool MarkMethodsIf(Collection<MethodDefinition> methods, Func<MethodDefinition, bool> predicate, in
DependencyInfo
reason, in MessageOrigin origin)
2785
protected MethodDefinition? MarkMethodIf(Collection<MethodDefinition> methods, Func<MethodDefinition, bool> predicate, in
DependencyInfo
reason, in MessageOrigin origin)
2798
protected bool MarkDefaultConstructor(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
2806
void MarkCustomMarshalerGetInstance(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
2821
void MarkICustomMarshalerMethods(TypeDefinition inputType, in
DependencyInfo
reason, MessageOrigin origin)
2924
protected (TypeReference,
DependencyInfo
) GetOriginalType(TypeReference type,
DependencyInfo
reason, MessageOrigin origin)
3005
var
di = new DependencyInfo(DependencyKind.TypePreserve, type);
3027
var
di = new DependencyInfo(DependencyKind.TypePreserve, type);
3116
protected bool MarkFields(TypeDefinition type, bool includeStatic, in
DependencyInfo
reason, MessageOrigin origin)
3149
protected void MarkStaticFields(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
3161
protected virtual bool MarkMethods(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
3170
void MarkMethodCollection(IList<MethodDefinition> methods, in
DependencyInfo
reason, MessageOrigin origin)
3176
protected virtual MethodDefinition? MarkMethod(MethodReference reference,
DependencyInfo
reason, in MessageOrigin origin)
3178
DependencyInfo
originalReason = reason;
3354
protected (MethodReference,
DependencyInfo
) GetOriginalMethod(MethodReference method,
DependencyInfo
reason, MessageOrigin origin)
3371
protected virtual void ProcessMethod(MethodDefinition method, in
DependencyInfo
reason)
3614
protected virtual void MarkAndCacheConvertToThrowExceptionCtor(
DependencyInfo
reason, MessageOrigin origin)
3650
MarkType(disablePrivateReflection,
DependencyInfo
.DisablePrivateReflectionRequirement, emptyOrigin);
3777
protected internal void MarkProperty(PropertyDefinition prop, in
DependencyInfo
reason)
3789
protected internal virtual void MarkEvent(EventDefinition evt, in
DependencyInfo
reason, MessageOrigin origin)
3806
internal void MarkMethodIfNotNull(MethodReference method, in
DependencyInfo
reason, in MessageOrigin origin)
4033
var
reason = new DependencyInfo(DependencyKind.Ldtoken, method);
4098
void MarkInterfaceImplementationList(List<InterfaceImplementation> ifaces, MessageOrigin origin,
DependencyInfo
? reason = null)
4106
protected internal virtual void MarkInterfaceImplementation(InterfaceImplementation iface, MessageOrigin origin,
DependencyInfo
? reason = null)
Linker.Steps\RootAssemblyInputStep.cs (2)
26
var
di = new DependencyInfo(DependencyKind.RootAssembly, assembly);
170
var
di = new DependencyInfo(DependencyKind.RootAssembly, assembly);
Linker\Annotations.cs (3)
164
public void Mark(IMetadataTokenProvider provider, in
DependencyInfo
reason, in MessageOrigin origin)
178
public void Mark(CustomAttribute attribute, in
DependencyInfo
reason)
305
public bool MarkProcessed(IMetadataTokenProvider provider, in
DependencyInfo
reason)
Linker\DependencyInfo.cs (10)
153
public readonly struct DependencyInfo : IEquatable<
DependencyInfo
>
158
public static readonly
DependencyInfo
Unspecified = new DependencyInfo(DependencyKind.Unspecified, null);
159
public static readonly
DependencyInfo
AlreadyMarked = new DependencyInfo(DependencyKind.AlreadyMarked, null);
160
public static readonly
DependencyInfo
DisablePrivateReflectionRequirement = new DependencyInfo(DependencyKind.DisablePrivateReflectionRequirement, null);
161
public bool Equals(
DependencyInfo
other) => (Kind, Source) == (other.Kind, other.Source);
162
public override bool Equals(object? obj) => obj is
DependencyInfo
info && this.Equals(info);
164
public static bool operator ==(
DependencyInfo
lhs,
DependencyInfo
rhs) => lhs.Equals(rhs);
165
public static bool operator !=(
DependencyInfo
lhs,
DependencyInfo
rhs) => !lhs.Equals(rhs);
Linker\DgmlDependencyRecorder.cs (1)
113
public void RecordDependency(object target, in
DependencyInfo
reason, bool marked)
Linker\IDependencyRecorder.cs (1)
56
void RecordDependency(object target, in
DependencyInfo
reason, bool marked);
Linker\MarkingHelpers.cs (2)
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)
Linker\SerializationMarker.cs (3)
133
var
reason = new DependencyInfo(ToDependencyKind(serializerKind), provider);
177
void MarkRecursiveMembersInternal(TypeReference typeRef, in
DependencyInfo
reason)
182
DependencyInfo
typeReason = reason;
Linker\Tracer.cs (1)
77
public void AddDirectDependency(object target, in
DependencyInfo
reason, bool marked)
Linker\TypeMapHandler.cs (1)
112
void MarkTypeMapAttribute(CustomAttributeWithOrigin entry,
DependencyInfo
info)
Linker\XmlDependencyRecorder.cs (1)
97
public void RecordDependency(object target, in
DependencyInfo
reason, bool marked)