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)
3069
if (Annotations.TryGetPreservedMembers(type, out
TypePreserveMembers
members))
3077
if ((members &
TypePreserveMembers
.Visible) != 0 && IsMethodVisible(m))
3083
if ((members &
TypePreserveMembers
.Internal) != 0 && IsMethodInternal(m))
3089
if ((members &
TypePreserveMembers
.Library) != 0)
3104
if ((members &
TypePreserveMembers
.Visible) != 0 && IsFieldVisible(f))
3110
if ((members &
TypePreserveMembers
.Internal) != 0 && IsFieldInternal(f))
Linker.Steps\RootAssemblyInputStep.cs (17)
66
var
preserve_visible =
TypePreserveMembers
.Visible;
68
preserve_visible |=
TypePreserveMembers
.Internal;
74
var
preserve_library =
TypePreserveMembers
.Visible |
TypePreserveMembers
.Library;
76
preserve_library |=
TypePreserveMembers
.Internal;
122
void MarkAndPreserve(AssemblyDefinition assembly,
TypePreserveMembers
preserve)
133
void MarkAndPreserve(TypeDefinition type,
TypePreserveMembers
preserve)
135
TypePreserveMembers
preserve_anything = preserve;
136
if ((preserve &
TypePreserveMembers
.Visible) != 0 && !IsTypeVisible(type))
137
preserve_anything &= ~
TypePreserveMembers
.Visible;
139
if ((preserve &
TypePreserveMembers
.Internal) != 0 && IsTypePrivate(type))
140
preserve_anything &= ~
TypePreserveMembers
.Internal;
143
if ((preserve &
TypePreserveMembers
.Library) != 0 && type.IsInterface)
153
case
TypePreserveMembers
.Library:
174
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();
396
public void SetMembersPreserve(TypeDefinition type,
TypePreserveMembers
preserve)
398
if (preserved_type_members.TryGetValue(type, out
TypePreserveMembers
existing))
404
static
TypePreserveMembers
CombineMembers(
TypePreserveMembers
left,
TypePreserveMembers
right)
409
public void SetMembersPreserve(ExportedType type,
TypePreserveMembers
preserve)
411
if (preserved_exportedtype_members.TryGetValue(type, out
TypePreserveMembers
existing))
417
public bool TryGetPreservedMembers(TypeDefinition type, out
TypePreserveMembers
preserve)
422
public bool TryGetPreservedMembers(ExportedType type, out
TypePreserveMembers
preserve)