185 instantiations of DependencyInfo
illink (185)
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);
1328
MarkType(security_type, new
DependencyInfo
(DependencyKind.AttributeType, sa), origin);
1339
MarkCustomAttributeProperty(named_argument, attribute, ca, new
DependencyInfo
(DependencyKind.AttributeProperty, ca), origin);
1385
MarkField(field, new
DependencyInfo
(DependencyKind.CustomAttributeField, ca), origin);
1450
MarkType(et, new
DependencyInfo
(DependencyKind.CustomAttributeArgumentType, ca), origin);
1467
MarkType(argument.Type, new
DependencyInfo
(DependencyKind.CustomAttributeArgumentType, ca), origin);
1468
MarkType((TypeReference)argument.Value, new
DependencyInfo
(DependencyKind.CustomAttributeArgumentValue, ca), origin);
1473
MarkType(boxed_value.Type, new
DependencyInfo
(DependencyKind.CustomAttributeArgumentType, ca), origin);
1526
MarkSecurityDeclarations(assembly, new
DependencyInfo
(DependencyKind.AssemblyOrModuleAttribute, assembly), assemblyOrigin);
1538
MarkCustomAttributes(assembly, new
DependencyInfo
(DependencyKind.AssemblyOrModuleAttribute, assembly), origin);
1539
MarkCustomAttributes(module, new
DependencyInfo
(DependencyKind.AssemblyOrModuleAttribute, module), origin);
1542
MarkEntireType(type, new
DependencyInfo
(DependencyKind.TypeInAssembly, assembly), origin);
1551
MarkingHelpers.MarkExportedType(exportedType, module, new
DependencyInfo
(DependencyKind.ExportedType, assembly), origin);
1612
MarkType(moduleType, new
DependencyInfo
(DependencyKind.TypeInAssembly, assembly), origin);
1654
MarkCustomAttribute(customAttribute, new
DependencyInfo
(DependencyKind.AssemblyOrModuleAttribute, assemblyLevelAttribute.Provider), assemblyOrigin);
1728
MarkType(reference.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, reference), origin);
1731
reason = new
DependencyInfo
(DependencyKind.FieldOnGenericInstance, reference);
1880
MarkType(field.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, field), origin);
1883
MarkType(field.FieldType, new
DependencyInfo
(DependencyKind.FieldType, field), fieldOrigin);
1884
MarkCustomAttributes(field, new
DependencyInfo
(DependencyKind.CustomAttribute, field), fieldOrigin);
1885
MarkMarshalSpec(field, new
DependencyInfo
(DependencyKind.FieldMarshalSpec, field), fieldOrigin);
1914
DependencyKind.FieldAccess => new
DependencyInfo
(DependencyKind.TriggersCctorThroughFieldAccess, reason.Source),
1915
_ => new
DependencyInfo
(DependencyKind.CctorForField, field)
1982
MarkAssembly(module.Assembly, new
DependencyInfo
(DependencyKind.AssemblyOfModule, module), origin);
1995
MarkDefaultConstructor(type, new
DependencyInfo
(DependencyKind.SerializationMethodForType, type), origin);
1996
MarkMethodsIf(type.Methods, IsSpecialSerializationConstructor, new
DependencyInfo
(DependencyKind.SerializationMethodForType, type), origin);
1999
MarkMethodsIf(type.Methods, HasOnSerializeOrDeserializeAttribute, new
DependencyInfo
(DependencyKind.SerializationMethodForType, type), origin);
2033
MarkTypeVisibleToReflection(methodDefinition.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, methodDefinition), origin);
2071
MarkTypeVisibleToReflection(fieldDefinition.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, fieldDefinition), origin);
2174
MarkStaticConstructor(type, new
DependencyInfo
(DependencyKind.TriggersCctorForCalledMethod, reason.Source), origin);
2196
MarkModule(module, new
DependencyInfo
(DependencyKind.ScopeOfType, type), origin);
2203
MarkType(type.BaseType, new
DependencyInfo
(DependencyKind.BaseType, type), typeOrigin);
2211
MarkType(type.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, type), typeOrigin);
2212
MarkCustomAttributes(type, new
DependencyInfo
(DependencyKind.CustomAttribute, type), typeOrigin);
2213
MarkSecurityDeclarations(type, new
DependencyInfo
(DependencyKind.CustomAttribute, type), typeOrigin);
2221
MarkMethodIf(type.Methods, static m => m.Name == "Finalize", new
DependencyInfo
(DependencyKind.MethodForSpecialType, type), typeOrigin);
2282
MarkMethod(method, new
DependencyInfo
(DependencyKind.VirtualNeededDueToPreservedScope, type), typeOrigin);
2287
MarkStaticConstructor(type, new
DependencyInfo
(DependencyKind.CctorForType, type), typeOrigin);
2381
if (MarkMethodsIf(type.Methods, MethodDefinitionExtensions.IsPublicInstancePropertyMethod, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, type), origin))
2382
Tracer.AddDirectDependency(attribute, new
DependencyInfo
(DependencyKind.CustomAttribute, type), marked: false);
2408
Tracer.AddDirectDependency(attribute, new
DependencyInfo
(DependencyKind.CustomAttribute, type), marked: false);
2409
MarkNamedMethod(type, name, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2425
Tracer.AddDirectDependency(attribute, new
DependencyInfo
(DependencyKind.CustomAttribute, type), marked: false);
2472
MarkMethodVisibleToReflection(method, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2481
MarkFieldVisibleToReflection(field, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2488
MarkPropertyVisibleToReflection(property, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2497
MarkMethodsVisibleToReflection(type, new
DependencyInfo
(DependencyKind.KeptForSpecialAttribute, attribute), origin);
2498
MarkFieldsVisibleToReflection(type, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2526
Tracer.AddDirectDependency(attribute, new
DependencyInfo
(DependencyKind.CustomAttribute, type), marked: false);
2527
MarkType(proxyTypeReference, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2531
MarkMethodsVisibleToReflection(proxyType, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2532
MarkFieldsVisibleToReflection(proxyType, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2572
MarkNamedField(method.DeclaringType, member_name, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2573
MarkNamedProperty(method.DeclaringType, member_name, new
DependencyInfo
(DependencyKind.ReferencedBySpecialAttribute, attribute), origin);
2657
MarkCustomAttributes(parameter, new
DependencyInfo
(DependencyKind.GenericParameterCustomAttribute, parameter.Owner), origin);
2663
MarkCustomAttributes(constraint, new
DependencyInfo
(DependencyKind.GenericParameterConstraintCustomAttribute, parameter.Owner), origin);
2664
MarkType(constraint.ConstraintType, new
DependencyInfo
(DependencyKind.GenericParameterConstraintType, parameter.Owner), origin);
2909
MarkStaticFields(nestedType, new
DependencyInfo
(DependencyKind.EventSourceProviderField, td), origin);
2915
MarkMethodsIf(type.Methods, m => m.Name == ".ctor" || m.Name == "Invoke", new
DependencyInfo
(DependencyKind.MethodForSpecialType, type), origin);
2934
MarkType(fnptr.ReturnType, new
DependencyInfo
(DependencyKind.ReturnType, fnptr), origin);
2941
(type, reason) = (specification.ElementType, new
DependencyInfo
(DependencyKind.ElementType, specification));
2954
MarkType(fnptr.Parameters[i].ParameterType, new
DependencyInfo
(DependencyKind.ParameterType, fnptr), origin);
2960
MarkType(mod.ModifierType, new
DependencyInfo
(DependencyKind.ModifierType, mod), origin);
2971
var argumentTypeDef = MarkType(argument, new
DependencyInfo
(DependencyKind.GenericArgumentType, instance), origin);
2999
var di = new
DependencyInfo
(DependencyKind.TypePreserve, type);
3021
var di = new
DependencyInfo
(DependencyKind.TypePreserve, type);
3097
MarkMethodCollection(list, new
DependencyInfo
(DependencyKind.PreservedMethod, type), origin);
3107
MarkMethodCollection(list, new
DependencyInfo
(DependencyKind.PreservedMethod, method), origin);
3177
MarkType(reference.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, reference), origin);
3190
MarkType(reference.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, reference), origin);
3192
reason = new
DependencyInfo
(DependencyKind.MethodOnGenericInstance, reference);
3228
MarkType(method.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringTypeOfCalledMethod, method), new MessageOrigin(reason.Source as IMemberDefinition ?? method));
3235
MarkEvent(@event, new
DependencyInfo
(kind, originalReason.Source), origin);
3358
(method, reason) = (specification.ElementMethod, new
DependencyInfo
(DependencyKind.ElementMethod, specification));
3382
MarkType(method.DeclaringType, new
DependencyInfo
(DependencyKind.DeclaringType, method), methodOrigin);
3383
MarkCustomAttributes(method, new
DependencyInfo
(DependencyKind.CustomAttribute, method), methodOrigin);
3384
MarkSecurityDeclarations(method, new
DependencyInfo
(DependencyKind.CustomAttribute, method), methodOrigin);
3391
Tracer.AddDirectDependency(method.DeclaringType, new
DependencyInfo
(DependencyKind.InstantiatedByCtor, method), marked: false);
3404
MarkProperty(property, new
DependencyInfo
(PropagateDependencyKindToAccessors(reason.Kind, DependencyKind.PropertyOfPropertyMethod), method));
3411
MarkType(pd.ParameterType, new
DependencyInfo
(DependencyKind.ParameterType, method), methodOrigin);
3412
MarkCustomAttributes(pd, new
DependencyInfo
(DependencyKind.ParameterAttribute, method), methodOrigin);
3413
MarkMarshalSpec(pd, new
DependencyInfo
(DependencyKind.ParameterMarshalSpec, method), methodOrigin);
3436
MarkMethod(@base, new
DependencyInfo
(DependencyKind.MethodImplOverride, method), methodOrigin);
3459
MarkType(method.ReturnType, new
DependencyInfo
(DependencyKind.ReturnType, method), methodOrigin);
3460
MarkCustomAttributes(method.MethodReturnType, new
DependencyInfo
(DependencyKind.ReturnTypeAttribute, method), methodOrigin);
3461
MarkMarshalSpec(method.MethodReturnType, new
DependencyInfo
(DependencyKind.ReturnTypeMarshalSpec, method), methodOrigin);
3487
MarkMethodIf(declaringType.Methods, m => m.Name == methodPair, new
DependencyInfo
(DependencyKind.MethodForSpecialType, declaringType), methodOrigin);
3524
MarkFields(type, includeStatic: type.IsEnum, reason: new
DependencyInfo
(DependencyKind.MemberOfType, type), origin);
3597
if (!MarkDefaultConstructor(baseType, new
DependencyInfo
(DependencyKind.BaseDefaultCtorForStubbedMethod, method), origin))
3603
MarkAndCacheConvertToThrowExceptionCtor(new
DependencyInfo
(DependencyKind.UnreachableBodyRequirement, method), origin);
3646
var ctor = MarkMethodIf(disablePrivateReflection.Methods, MethodDefinitionExtensions.IsDefaultConstructor, new
DependencyInfo
(DependencyKind.DisablePrivateReflectionRequirement, disablePrivateReflection), emptyOrigin);
3671
MarkMethod(ov.Base, new
DependencyInfo
(DependencyKind.BaseMethod, method), origin);
3681
Annotations.MarkProcessed(pii.Module, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method));
3701
MarkDefaultConstructor(returnTypeDefinition, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method), origin);
3702
MarkFields(returnTypeDefinition, includeStaticFields, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method), origin);
3709
MarkFields(method.DeclaringType, includeStaticFields, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method), origin);
3726
MarkFields(paramTypeDefinition, includeStaticFields, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method), origin);
3729
MarkDefaultConstructor(paramTypeDefinition, new
DependencyInfo
(DependencyKind.InteropMethodDependency, method), origin);
3779
MarkCustomAttributes(prop, new
DependencyInfo
(DependencyKind.CustomAttribute, prop), propertyOrigin);
3788
MarkMethodIfNotNull(evt.AddMethod, new
DependencyInfo
(dependencyKind, evt), origin);
3789
MarkMethodIfNotNull(evt.InvokeMethod, new
DependencyInfo
(dependencyKind, evt), origin);
3790
MarkMethodIfNotNull(evt.RemoveMethod, new
DependencyInfo
(dependencyKind, evt), origin);
3796
MarkCustomAttributes(evt, new
DependencyInfo
(DependencyKind.CustomAttribute, evt), eventOrigin);
3814
MarkAndCacheConvertToThrowExceptionCtor(new
DependencyInfo
(DependencyKind.UnreachableBodyRequirement, body.Method), origin);
3906
MarkType(var.VariableType, new
DependencyInfo
(DependencyKind.VariableType, methodIL.Method), origin);
3910
MarkType(eh.CatchType, new
DependencyInfo
(DependencyKind.CatchType, methodIL.Method), origin);
3990
MarkField((FieldReference)instruction.Operand, new
DependencyInfo
(DependencyKind.FieldAccess, method), origin);
4014
MarkMethodVisibleToReflection(methodReference, new
DependencyInfo
(dependencyKind, method), origin);
4018
MarkMethod(methodReference, new
DependencyInfo
(dependencyKind, method), origin);
4027
var reason = new
DependencyInfo
(DependencyKind.Ldtoken, method);
4087
MarkType(operand, new
DependencyInfo
(DependencyKind.InstructionTypeRef, method), origin);
4104
Annotations.MarkProcessed(iface, reason ?? new
DependencyInfo
(DependencyKind.InterfaceImplementationOnType, origin.Provider));
4108
MarkCustomAttributes(iface, new
DependencyInfo
(DependencyKind.CustomAttribute, iface), origin);
4110
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 (8)
70
MarkTypeMapAttribute(entry, new
DependencyInfo
(DependencyKind.TypeMapEntry, callingMethod));
77
var info = new
DependencyInfo
(DependencyKind.TypeMapAssemblyTarget, callingMethod);
91
MarkTypeMapAttribute(entry, new
DependencyInfo
(DependencyKind.TypeMapEntry, callingMethod));
98
var info = new
DependencyInfo
(DependencyKind.TypeMapAssemblyTarget, callingMethod);
136
MarkTypeMapAttribute(attr, new
DependencyInfo
(DependencyKind.TypeMapEntry, targetType));
204
_markStep.MarkCustomAttribute(attr.Attribute, new
DependencyInfo
(DependencyKind.TypeMapEntry, null), new MessageOrigin(attr.Origin));
221
MarkTypeMapAttribute(attr, new
DependencyInfo
(DependencyKind.TypeMapEntry, null));
241
MarkTypeMapAttribute(attr, new
DependencyInfo
(DependencyKind.TypeMapEntry, dependencySource));
98 references to DependencyInfo
illink (98)
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)
1263
protected internal void MarkStaticConstructor(TypeDefinition type, in
DependencyInfo
reason, in MessageOrigin origin)
1297
protected void MarkSecurityDeclarations(ISecurityDeclarationProvider provider, in
DependencyInfo
reason, MessageOrigin origin)
1308
protected virtual void MarkSecurityDeclaration(SecurityDeclaration sd, in
DependencyInfo
reason, MessageOrigin origin)
1317
protected virtual void MarkSecurityAttribute(SecurityAttribute sa, in
DependencyInfo
reason, MessageOrigin origin)
1342
protected void MarkCustomAttributeProperty(CustomAttributeNamedArgument namedArgument, TypeDefinition attribute, ICustomAttribute ca, in
DependencyInfo
reason, MessageOrigin origin)
1485
public virtual void MarkAssembly(AssemblyDefinition assembly,
DependencyInfo
reason, MessageOrigin origin)
1689
var skippedItems = new List<(AttributeProviderPair,
DependencyInfo
, MessageOrigin)>();
1721
protected void MarkField(FieldReference reference,
DependencyInfo
reason, in MessageOrigin origin)
1858
void MarkField(FieldDefinition field, in
DependencyInfo
reason, in MessageOrigin origin)
1911
var
cctorReason = reason.Kind switch
1970
void MarkModule(ModuleDefinition module,
DependencyInfo
reason, MessageOrigin origin)
2002
protected internal virtual void MarkTypeVisibleToReflection(TypeReference type, in
DependencyInfo
reason, in MessageOrigin origin)
2022
internal void MarkMethodVisibleToReflection(MethodReference method, in
DependencyInfo
reason, in MessageOrigin origin)
2047
bool MarkMethodsVisibleToReflection(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
2061
internal void MarkFieldVisibleToReflection(FieldReference field, in
DependencyInfo
reason, in MessageOrigin origin)
2080
bool MarkFieldsVisibleToReflection(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin, bool markBackingFieldsOnlyIfPropertyMarked = false)
2105
internal void MarkPropertyVisibleToReflection(PropertyDefinition property, in
DependencyInfo
reason, in MessageOrigin origin)
2116
internal void MarkEventVisibleToReflection(EventDefinition @event, in
DependencyInfo
reason, in MessageOrigin origin)
2128
internal void MarkStaticConstructorVisibleToReflection(TypeDefinition type, in
DependencyInfo
reason, in MessageOrigin origin)
2139
protected internal virtual TypeDefinition? MarkType(TypeReference reference,
DependencyInfo
reason, MessageOrigin origin)
2549
protected int MarkNamedMethod(TypeDefinition type, string method_name, in
DependencyInfo
reason, MessageOrigin origin)
2576
bool MarkNamedField(TypeDefinition type, string field_name, in
DependencyInfo
reason, MessageOrigin origin)
2593
void MarkNamedProperty(TypeDefinition type, string property_name, in
DependencyInfo
reason, MessageOrigin origin)
2765
protected internal bool MarkMethodsIf(Collection<MethodDefinition> methods, Func<MethodDefinition, bool> predicate, in
DependencyInfo
reason, in MessageOrigin origin)
2779
protected MethodDefinition? MarkMethodIf(Collection<MethodDefinition> methods, Func<MethodDefinition, bool> predicate, in
DependencyInfo
reason, in MessageOrigin origin)
2792
protected bool MarkDefaultConstructor(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
2800
void MarkCustomMarshalerGetInstance(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
2815
void MarkICustomMarshalerMethods(TypeDefinition inputType, in
DependencyInfo
reason, MessageOrigin origin)
2918
protected (TypeReference,
DependencyInfo
) GetOriginalType(TypeReference type,
DependencyInfo
reason, MessageOrigin origin)
2999
var
di = new DependencyInfo(DependencyKind.TypePreserve, type);
3021
var
di = new DependencyInfo(DependencyKind.TypePreserve, type);
3110
protected bool MarkFields(TypeDefinition type, bool includeStatic, in
DependencyInfo
reason, MessageOrigin origin)
3143
protected void MarkStaticFields(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
3155
protected virtual bool MarkMethods(TypeDefinition type, in
DependencyInfo
reason, MessageOrigin origin)
3164
void MarkMethodCollection(IList<MethodDefinition> methods, in
DependencyInfo
reason, MessageOrigin origin)
3170
protected virtual MethodDefinition? MarkMethod(MethodReference reference,
DependencyInfo
reason, in MessageOrigin origin)
3172
DependencyInfo
originalReason = reason;
3348
protected (MethodReference,
DependencyInfo
) GetOriginalMethod(MethodReference method,
DependencyInfo
reason, MessageOrigin origin)
3365
protected virtual void ProcessMethod(MethodDefinition method, in
DependencyInfo
reason)
3608
protected virtual void MarkAndCacheConvertToThrowExceptionCtor(
DependencyInfo
reason, MessageOrigin origin)
3644
MarkType(disablePrivateReflection,
DependencyInfo
.DisablePrivateReflectionRequirement, emptyOrigin);
3771
protected internal void MarkProperty(PropertyDefinition prop, in
DependencyInfo
reason)
3783
protected internal virtual void MarkEvent(EventDefinition evt, in
DependencyInfo
reason, MessageOrigin origin)
3800
internal void MarkMethodIfNotNull(MethodReference method, in
DependencyInfo
reason, in MessageOrigin origin)
4027
var
reason = new DependencyInfo(DependencyKind.Ldtoken, method);
4092
void MarkInterfaceImplementationList(List<InterfaceImplementation> ifaces, MessageOrigin origin,
DependencyInfo
? reason = null)
4100
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 (3)
77
var
info = new DependencyInfo(DependencyKind.TypeMapAssemblyTarget, callingMethod);
98
var
info = new DependencyInfo(DependencyKind.TypeMapAssemblyTarget, callingMethod);
104
void MarkTypeMapAttribute(CustomAttributeWithOrigin entry,
DependencyInfo
info)
Linker\XmlDependencyRecorder.cs (1)
97
public void RecordDependency(object target, in
DependencyInfo
reason, bool marked)