35 references to TypePreserveMembers
illink (35)
Linker.Steps\MarkExportedTypesTargetStep.cs (1)
25
if (!context.Annotations.TryGetPreservedMembers(exportedType, out
TypePreserveMembers
members))
Linker.Steps\MarkStep.cs (6)
2954
if (Annotations.TryGetPreservedMembers(type, out
TypePreserveMembers
members))
2962
if ((members &
TypePreserveMembers
.Visible) != 0 && IsMethodVisible(m))
2968
if ((members &
TypePreserveMembers
.Internal) != 0 && IsMethodInternal(m))
2974
if ((members &
TypePreserveMembers
.Library) != 0)
2989
if ((members &
TypePreserveMembers
.Visible) != 0 && IsFieldVisible(f))
2995
if ((members &
TypePreserveMembers
.Internal) != 0 && IsFieldInternal(f))
Linker.Steps\RootAssemblyInputStep.cs (17)
59
var
preserve_visible =
TypePreserveMembers
.Visible;
61
preserve_visible |=
TypePreserveMembers
.Internal;
67
var
preserve_library =
TypePreserveMembers
.Visible |
TypePreserveMembers
.Library;
69
preserve_library |=
TypePreserveMembers
.Internal;
121
void MarkAndPreserve(AssemblyDefinition assembly,
TypePreserveMembers
preserve)
132
void MarkAndPreserve(TypeDefinition type,
TypePreserveMembers
preserve)
134
TypePreserveMembers
preserve_anything = preserve;
135
if ((preserve &
TypePreserveMembers
.Visible) != 0 && !IsTypeVisible(type))
136
preserve_anything &= ~
TypePreserveMembers
.Visible;
138
if ((preserve &
TypePreserveMembers
.Internal) != 0 && IsTypePrivate(type))
139
preserve_anything &= ~
TypePreserveMembers
.Internal;
142
if ((preserve &
TypePreserveMembers
.Library) != 0 && type.IsInterface)
152
case
TypePreserveMembers
.Library:
173
void MarkAndPreserve(AssemblyDefinition assembly, ExportedType type,
TypePreserveMembers
preserve)
Linker\Annotations.cs (11)
59
protected readonly Dictionary<TypeDefinition,
TypePreserveMembers
> preserved_type_members = new();
60
protected readonly Dictionary<ExportedType,
TypePreserveMembers
> preserved_exportedtype_members = new();
353
public void SetMembersPreserve(TypeDefinition type,
TypePreserveMembers
preserve)
355
if (preserved_type_members.TryGetValue(type, out
TypePreserveMembers
existing))
361
static
TypePreserveMembers
CombineMembers(
TypePreserveMembers
left,
TypePreserveMembers
right)
366
public void SetMembersPreserve(ExportedType type,
TypePreserveMembers
preserve)
368
if (preserved_exportedtype_members.TryGetValue(type, out
TypePreserveMembers
existing))
374
public bool TryGetPreservedMembers(TypeDefinition type, out
TypePreserveMembers
preserve)
379
public bool TryGetPreservedMembers(ExportedType type, out
TypePreserveMembers
preserve)