641 lines
36 KiB
XML
641 lines
36 KiB
XML
<?xml version="1.0" encoding="utf-8" ?>
|
||
<linker>
|
||
<!-- 保留ProtoBuf运行时所需的核心类型 -->
|
||
<assembly fullname="protobuf-net">
|
||
<!-- 核心序列化器 -->
|
||
<type fullname="ProtoBuf.Serializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+NonGeneric" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+Generic" preserve="all"/>
|
||
|
||
<!-- 元数据模型 - 关键:需要保留所有内部类型和方法 -->
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+Singleton" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+BasicType" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+SerializerPair" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType+Comparer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.AttributeMap" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.AttributeMap+AttributeInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.BasicList" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.BasicList+Node" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MutableList" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.TypeFormatEventArgs" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.CallbackSet" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.SubType" preserve="all"/>
|
||
|
||
<!-- 可扩展性支持 -->
|
||
<type fullname="ProtoBuf.Extensible" preserve="all"/>
|
||
<type fullname="ProtoBuf.IExtensible" preserve="all"/>
|
||
<type fullname="ProtoBuf.ExtensionObject" preserve="all"/>
|
||
<type fullname="ProtoBuf.ExtensionObject`1" preserve="all"/>
|
||
|
||
<!-- 基础类型和协议缓冲区支持 -->
|
||
<type fullname="ProtoBuf.ProtoContractAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoMemberAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoIncludeAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoPartialIgnoreAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoPartialMemberAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoEnumAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoMapAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoIgnoreAttribute" preserve="all"/>
|
||
|
||
<!-- 数据格式支持 -->
|
||
<type fullname="ProtoBuf.DataFormat" preserve="all"/>
|
||
<type fullname="ProtoBuf.ImplicitFields" preserve="all"/>
|
||
<type fullname="ProtoBuf.WireType" preserve="all"/>
|
||
|
||
<!-- 编译时类型构建器 - 关键:这些类型处理反射和类型构造 -->
|
||
<type fullname="ProtoBuf.Compiler.CompilerContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.CodeGenerator" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.Local" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.EmitContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.ProtoDeserializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.ProtoSerializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.FieldAccess" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.MethodBuilder" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.TypeFlow" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.Variable" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.ILGenerator" preserve="all"/>
|
||
|
||
<!-- 序列化核心类型 -->
|
||
<type fullname="ProtoBuf.SerializationContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.DeserializationContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.BufferPool" preserve="all"/>
|
||
<type fullname="ProtoBuf.BclHelpers" preserve="all"/>
|
||
<type fullname="ProtoBuf.Helpers" preserve="all"/>
|
||
|
||
<!-- 类型模型和序列化器工厂 -->
|
||
<type fullname="ProtoBuf.Meta.TypeModel" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.TypeModel+TypeModelComparer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+DefaultType" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+LockContent" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+BasicList" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+BasicList+Node" preserve="all"/>
|
||
|
||
<!-- 额外的元数据类型 - 针对ResolveTupleConstructor问题 -->
|
||
<type fullname="ProtoBuf.Meta.MetaType+Resolver" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember+Resolver" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.TupleConstructorInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MutableList" preserve="all"/>
|
||
|
||
<!-- 反序列化专用类型 - 关键:解决反序列化问题 -->
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+DefaultType+SerializerPair" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+SerializerPairDelegate" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+DeserializerPair" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+DeserializerPairDelegate" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+AutoType" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+AutoAdd" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+KnownTypes" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+KnownTypes+TypeInfo" preserve="all"/>
|
||
|
||
<!-- 协议缓冲区核心类型 -->
|
||
<type fullname="ProtoBuf.ProtoWriter" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoReader" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoWriter+State" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoReader+State" preserve="all"/>
|
||
|
||
<!-- 反序列化上下文和状态 -->
|
||
<type fullname="ProtoBuf.DeserializationContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.DeserializationContext+State" preserve="all"/>
|
||
<type fullname="ProtoBuf.SerializationContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.SerializationContext+State" preserve="all"/>
|
||
|
||
<!-- 基础序列化委托类型 -->
|
||
<type fullname="ProtoBuf.Serializer+SerializeDelegate" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+DeserializeDelegate" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+SerializeDelegate`1" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+DeserializeDelegate`1" preserve="all"/>
|
||
|
||
<!-- 额外的序列化支持类型 -->
|
||
<type fullname="ProtoBuf.Serializer+GenericSerializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+GenericDeserializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+NonGenericSerializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+NonGenericDeserializer" preserve="all"/>
|
||
|
||
<!-- 泛型集合反序列化支持 - 关键:解决复杂嵌套泛型问题 -->
|
||
<type fullname="ProtoBuf.Serializer+GenericSerializer`1" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+GenericDeserializer`1" preserve="all"/>
|
||
<type fullname="ProtoBuf.BclHelpers+ListDecorator`1" preserve="all"/>
|
||
<type fullname="ProtoBuf.BclHelpers+DictionaryDecorator`2" preserve="all"/>
|
||
<type fullname="ProtoBuf.BclHelpers+EnumerableDecorator`1" preserve="all"/>
|
||
|
||
<!-- ProtoBuf 核心编译时类型 - 解决IL2CPP代码生成问题 -->
|
||
<type fullname="ProtoBuf.Compiler.CompilerContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.CodeGenerator" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.Local" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.EmitContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.ProtoDeserializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.ProtoSerializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.FieldAccess" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.MethodBuilder" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.TypeFlow" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.Variable" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.ILGenerator" preserve="all"/>
|
||
|
||
<!-- ProtoBuf 元编程支持 - 解决类型构造问题 -->
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+Singleton" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+BasicType" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+SerializerPair" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType+Comparer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.AttributeMap" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.AttributeMap+AttributeInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.BasicList" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.BasicList+Node" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MutableList" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.TypeFormatEventArgs" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.CallbackSet" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.SubType" preserve="all"/>
|
||
|
||
<!-- 反序列化专用委托和回调 -->
|
||
<type fullname="ProtoBuf.Meta.CallbackSet+BeforeDeserialize" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.CallbackSet+AfterDeserialize" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.CallbackSet+BeforeSerialize" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.CallbackSet+AfterSerialize" preserve="all"/>
|
||
|
||
<!-- 类型解析和构造器支持 -->
|
||
<type fullname="ProtoBuf.Meta.MetaType+Constructor" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType+Field" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType+Property" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember+FieldInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember+PropertyInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType+Resolver" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember+Resolver" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.TupleConstructorInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MutableList" preserve="all"/>
|
||
</assembly>
|
||
|
||
<!-- 保留System.Reflection核心类型(ProtoBuf需要) -->
|
||
<assembly fullname="mscorlib">
|
||
<!-- 基础反射类型 -->
|
||
<type fullname="System.Reflection.MemberInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.MethodInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.MethodBase" preserve="all"/>
|
||
<type fullname="System.Reflection.FieldInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.PropertyInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.ParameterInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.ConstructorInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.Assembly" preserve="all"/>
|
||
<type fullname="System.Reflection.Module" preserve="all"/>
|
||
<type fullname="System.Type" preserve="all"/>
|
||
<type fullname="System.RuntimeType" preserve="all"/>
|
||
|
||
<!-- 运行时句柄 - 关键:这些是解决GetTypeModifiers问题的核心 -->
|
||
<type fullname="System.RuntimeTypeHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeMethodHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeFieldHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeParameterHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeHandle" preserve="all"/>
|
||
|
||
<!-- 反射工具和标志 -->
|
||
<type fullname="System.Reflection.BindingFlags" preserve="all"/>
|
||
<type fullname="System.Reflection.Emit.DynamicMethod" preserve="all"/>
|
||
<type fullname="System.Reflection.Emit.ILGenerator" preserve="all"/>
|
||
<type fullname="System.Reflection.Emit.MethodBuilder" preserve="all"/>
|
||
<type fullname="System.Reflection.Emit.TypeBuilder" preserve="all"/>
|
||
<type fullname="System.Reflection.Emit.AssemblyBuilder" preserve="all"/>
|
||
<type fullname="System.Reflection.Emit.ModuleBuilder" preserve="all"/>
|
||
|
||
<!-- 委托系统 -->
|
||
<type fullname="System.Delegate" preserve="all"/>
|
||
<type fullname="System.MulticastDelegate" preserve="all"/>
|
||
|
||
<!-- 数组和集合基础类型 -->
|
||
<type fullname="System.Array" preserve="all"/>
|
||
<type fullname="System.Collections.IEnumerable" preserve="all"/>
|
||
<type fullname="System.Collections.ICollection" preserve="all"/>
|
||
<type fullname="System.Collections.IList" preserve="all"/>
|
||
|
||
<!-- 类型构造和激活 -->
|
||
<type fullname="System.Activator" preserve="all"/>
|
||
<type fullname="System.TypeInitializationException" preserve="all"/>
|
||
|
||
<!-- Linq表达式支持 -->
|
||
<type fullname="System.Linq.Expressions.Expression" preserve="all"/>
|
||
<type fullname="System.Linq.Expressions.Expression`1" preserve="all"/>
|
||
<type fullname="System.Linq.Expressions.LambdaExpression" preserve="all"/>
|
||
<type fullname="System.Linq.Expressions.ParameterExpression" preserve="all"/>
|
||
<type fullname="System.Linq.Expressions.MethodCallExpression" preserve="all"/>
|
||
<type fullname="System.Linq.Expressions.MemberExpression" preserve="all"/>
|
||
<type fullname="System.Linq.Expressions.ConstantExpression" preserve="all"/>
|
||
<type fullname="System.Linq.Expressions.NewExpression" preserve="all"/>
|
||
<type fullname="System.Linq.Expressions.BinaryExpression" preserve="all"/>
|
||
|
||
<!-- 额外的反射和类型支持 - 针对反序列化 -->
|
||
<type fullname="System.Reflection.CustomAttributeData" preserve="all"/>
|
||
<type fullname="System.Reflection.CustomAttributeNamedArgument" preserve="all"/>
|
||
<type fullname="System.Reflection.CustomAttributeTypedArgument" preserve="all"/>
|
||
<type fullname="System.Reflection.DefaultMemberAttribute" preserve="all"/>
|
||
<type fullname="System.Reflection.EventInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.LocalVariableInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.ManifestResourceInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.ResourceAttributes" preserve="all"/>
|
||
<type fullname="System.Reflection.ResourceLocation" preserve="all"/>
|
||
|
||
<!-- 类型信息和元数据 -->
|
||
<type fullname="System.Reflection.TypeAttributes" preserve="all"/>
|
||
<type fullname="System.Reflection.FieldAttributes" preserve="all"/>
|
||
<type fullname="System.Reflection.MethodAttributes" preserve="all"/>
|
||
<type fullname="System.Reflection.ParameterAttributes" preserve="all"/>
|
||
<type fullname="System.Reflection.PropertyAttributes" preserve="all"/>
|
||
<type fullname="System.Reflection.EventAttributes" preserve="all"/>
|
||
<type fullname="System.Reflection.GenericParameterAttributes" preserve="all"/>
|
||
|
||
<!-- 类型和方法信息 -->
|
||
<type fullname="System.RuntimeTypeHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeMethodHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeFieldHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeParameterHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeArgumentHandle" preserve="all"/>
|
||
|
||
<!-- 额外的运行时类型支持 - 针对ParameterInfo内部调用 -->
|
||
<type fullname="System.RuntimeType+RuntimeTypeCache" preserve="all"/>
|
||
<type fullname="System.RuntimeMethodInfo" preserve="all"/>
|
||
<type fullname="System.RuntimeConstructorInfo" preserve="all"/>
|
||
<type fullname="System.RuntimePropertyInfo" preserve="all"/>
|
||
<type fullname="System.RuntimeFieldInfo" preserve="all"/>
|
||
<type fullname="System.RuntimeEventInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.RuntimeModule" preserve="all"/>
|
||
<type fullname="System.Reflection.RuntimeAssembly" preserve="all"/>
|
||
|
||
<!-- 参数和方法签名支持 -->
|
||
<type fullname="System.Reflection.ParameterModifier" preserve="all"/>
|
||
<type fullname="System.Reflection.MethodImplAttributes" preserve="all"/>
|
||
<type fullname="System.Reflection.CallingConventions" preserve="all"/>
|
||
<type fullname="System.Reflection.MethodSemanticsAttributes" preserve="all"/>
|
||
</assembly>
|
||
|
||
<!-- 保留项目中的所有消息类型 -->
|
||
<assembly fullname="Yomov.Core">
|
||
<!-- ProtoBuf消息类型 - 核心数据传输对象 -->
|
||
<type fullname="Yomov.SyncContentData" preserve="all"/>
|
||
<type fullname="Yomov.SyncContentControlData" preserve="all"/>
|
||
<type fullname="Yomov.SyncTeamData" preserve="all"/>
|
||
<type fullname="Yomov.SyncPlayerData" preserve="all"/>
|
||
|
||
<!-- Bridge to Logic数据类型 -->
|
||
<type fullname="Yomov.B2L_ContentData" preserve="all"/>
|
||
<type fullname="Yomov.B2L_PlayerData" preserve="all"/>
|
||
|
||
<!-- Client to Server请求响应类型 -->
|
||
<type fullname="Yomov.C2SDataRequest" preserve="all"/>
|
||
<type fullname="Yomov.C2SDataResponse" preserve="all"/>
|
||
|
||
<!-- Server to Client请求响应类型 -->
|
||
<type fullname="Yomov.S2CDataRequest" preserve="all"/>
|
||
<type fullname="Yomov.S2CDataResponse" preserve="all"/>
|
||
|
||
<!-- 命令和控制消息类型 -->
|
||
<type fullname="Yomov.CMD_NormalMsg" preserve="all"/>
|
||
<type fullname="Yomov.CMD_SyncContentInfo" preserve="all"/>
|
||
<type fullname="Yomov.CS2S_SyncContentControlData" preserve="all"/>
|
||
|
||
<!-- 几何和向量类型 -->
|
||
<type fullname="Yomov.FVector2" preserve="all"/>
|
||
<type fullname="Yomov.FVector3" preserve="all"/>
|
||
<type fullname="Yomov.FVector4" preserve="all"/>
|
||
<type fullname="Yomov.GMPoint2D" preserve="all"/>
|
||
<type fullname="Yomov.GMPoint3D" preserve="all"/>
|
||
<type fullname="Yomov.GMPoint4D" preserve="all"/>
|
||
<type fullname="Yomov.GM_Frame" preserve="all"/>
|
||
<type fullname="Yomov.GMCommand" preserve="all"/>
|
||
|
||
<!-- 消息ID定义 -->
|
||
<type fullname="Yomov.MessageID" preserve="all"/>
|
||
|
||
<!-- ProtoBuf传输工具类 -->
|
||
<type fullname="Yomov.ProtoTransfer" preserve="all"/>
|
||
<type fullname="Yomov.BridgeClient" preserve="all"/>
|
||
<type fullname="Yomov.LBELitNetClient" preserve="all"/>
|
||
<type fullname="Yomov.LitNetLogger" preserve="all"/>
|
||
<type fullname="Yomov.MessageInfo" preserve="all"/>
|
||
<type fullname="Yomov.Delegates" preserve="all"/>
|
||
|
||
<!-- 保留所有带有ProtoContract特性的类型 -->
|
||
<namespace fullname="Yomov" preserve="all"/>
|
||
</assembly>
|
||
|
||
<!-- 保留Creator程序集中的测试相关类型 -->
|
||
<assembly fullname="Yomov.Creator">
|
||
<!-- 测试和调试相关类型 - 全局命名空间(没有namespace) -->
|
||
<type fullname="DeserializationTester" preserve="all"/>
|
||
<type fullname="BridgeClientTester" preserve="all"/>
|
||
<type fullname="ProtoBufAOTCompiler" preserve="all"/>
|
||
<type fullname="NestedGenericCollection" preserve="all"/>
|
||
<type fullname="SimpleTestData" preserve="all"/>
|
||
<type fullname="ArrayTestData" preserve="all"/>
|
||
<type fullname="ListTestData" preserve="all"/>
|
||
<type fullname="NestedTestData" preserve="all"/>
|
||
<type fullname="ComplexNestedTestData" preserve="all"/>
|
||
<type fullname="TestEnum" preserve="all"/>
|
||
<type fullname="EnumTestData" preserve="all"/>
|
||
|
||
<!-- 保留所有带有ProtoContract特性的类型 -->
|
||
<namespace fullname="Yomov" preserve="all"/>
|
||
</assembly>
|
||
|
||
<!-- 保留主程序集中的其他相关类型 -->
|
||
<assembly fullname="Assembly-CSharp">
|
||
<!-- 如果有其他需要在主程序集中保留的类型,可以在这里添加 -->
|
||
</assembly>
|
||
|
||
<!-- 关键:保留ProtoBuf核心类型和序列化器 - 解决IL2CPP反射问题 -->
|
||
<assembly fullname="protobuf-net">
|
||
<!-- 核心序列化器 -->
|
||
<type fullname="ProtoBuf.Serializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+NonGeneric" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+Generic" preserve="all"/>
|
||
|
||
<!-- 元数据模型 - 关键:需要保留所有内部类型和方法 -->
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+Singleton" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+BasicType" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+SerializerPair" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType+Comparer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.AttributeMap" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.AttributeMap+AttributeInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.BasicList" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.BasicList+Node" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MutableList" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.TypeFormatEventArgs" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.CallbackSet" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.SubType" preserve="all"/>
|
||
|
||
<!-- 编译时类型构建器 - 关键:这些类型处理反射和类型构造 -->
|
||
<type fullname="ProtoBuf.Compiler.CompilerContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.CodeGenerator" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.Local" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.EmitContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.ProtoDeserializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.ProtoSerializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.FieldAccess" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.MethodBuilder" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.TypeFlow" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.Variable" preserve="all"/>
|
||
<type fullname="ProtoBuf.Compiler.ILGenerator" preserve="all"/>
|
||
|
||
<!-- 泛型序列化器 -->
|
||
<type fullname="ProtoBuf.Serializers.ListDecorator`1" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializers.ArrayDecorator`1" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializers.DictionaryDecorator`2" preserve="all"/>
|
||
|
||
<!-- 泛型委托 -->
|
||
<type fullname="ProtoBuf.Serializers.CompiledSerializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializers.IProtoSerializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializers.IProtoTypeSerializer" preserve="all"/>
|
||
|
||
<!-- 额外的序列化支持类型 -->
|
||
<type fullname="ProtoBuf.Serializer+GenericSerializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+GenericDeserializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+NonGenericSerializer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+NonGenericDeserializer" preserve="all"/>
|
||
|
||
<!-- 泛型集合反序列化支持 - 关键:解决复杂嵌套泛型问题 -->
|
||
<type fullname="ProtoBuf.Serializer+GenericSerializer`1" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+GenericDeserializer`1" preserve="all"/>
|
||
<type fullname="ProtoBuf.BclHelpers+ListDecorator`1" preserve="all"/>
|
||
<type fullname="ProtoBuf.BclHelpers+DictionaryDecorator`2" preserve="all"/>
|
||
<type fullname="ProtoBuf.BclHelpers+EnumerableDecorator`1" preserve="all"/>
|
||
|
||
<!-- 可扩展性支持 -->
|
||
<type fullname="ProtoBuf.Extensible" preserve="all"/>
|
||
<type fullname="ProtoBuf.IExtensible" preserve="all"/>
|
||
<type fullname="ProtoBuf.ExtensionObject" preserve="all"/>
|
||
<type fullname="ProtoBuf.ExtensionObject`1" preserve="all"/>
|
||
|
||
<!-- 基础类型和协议缓冲区支持 -->
|
||
<type fullname="ProtoBuf.ProtoContractAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoMemberAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoIncludeAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoPartialIgnoreAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoPartialMemberAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoEnumAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoMapAttribute" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoIgnoreAttribute" preserve="all"/>
|
||
|
||
<!-- 数据格式支持 -->
|
||
<type fullname="ProtoBuf.DataFormat" preserve="all"/>
|
||
<type fullname="ProtoBuf.ImplicitFields" preserve="all"/>
|
||
<type fullname="ProtoBuf.WireType" preserve="all"/>
|
||
|
||
<!-- 序列化核心类型 -->
|
||
<type fullname="ProtoBuf.SerializationContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.DeserializationContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.BufferPool" preserve="all"/>
|
||
<type fullname="ProtoBuf.BclHelpers" preserve="all"/>
|
||
<type fullname="ProtoBuf.Helpers" preserve="all"/>
|
||
|
||
<!-- 类型模型和序列化器工厂 -->
|
||
<type fullname="ProtoBuf.Meta.TypeModel" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.TypeModel+TypeModelComparer" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+DefaultType" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+LockContent" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+BasicList" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+BasicList+Node" preserve="all"/>
|
||
|
||
<!-- 额外的元数据类型 - 针对ResolveTupleConstructor问题 -->
|
||
<type fullname="ProtoBuf.Meta.MetaType+Resolver" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember+Resolver" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.TupleConstructorInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MutableList" preserve="all"/>
|
||
|
||
<!-- 反序列化专用类型 - 关键:解决反序列化问题 -->
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+DefaultType+SerializerPair" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+SerializerPairDelegate" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+DeserializerPair" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+DeserializerPairDelegate" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+AutoType" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+AutoAdd" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+KnownTypes" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.RuntimeTypeModel+KnownTypes+TypeInfo" preserve="all"/>
|
||
|
||
<!-- 协议缓冲区核心类型 -->
|
||
<type fullname="ProtoBuf.ProtoWriter" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoReader" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoWriter+State" preserve="all"/>
|
||
<type fullname="ProtoBuf.ProtoReader+State" preserve="all"/>
|
||
|
||
<!-- 反序列化上下文和状态 -->
|
||
<type fullname="ProtoBuf.DeserializationContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.DeserializationContext+State" preserve="all"/>
|
||
<type fullname="ProtoBuf.SerializationContext" preserve="all"/>
|
||
<type fullname="ProtoBuf.SerializationContext+State" preserve="all"/>
|
||
|
||
<!-- 基础序列化委托类型 -->
|
||
<type fullname="ProtoBuf.Serializer+SerializeDelegate" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+DeserializeDelegate" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+SerializeDelegate`1" preserve="all"/>
|
||
<type fullname="ProtoBuf.Serializer+DeserializeDelegate`1" preserve="all"/>
|
||
|
||
<!-- 反序列化专用委托和回调 -->
|
||
<type fullname="ProtoBuf.Meta.CallbackSet+BeforeDeserialize" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.CallbackSet+AfterDeserialize" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.CallbackSet+BeforeSerialize" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.CallbackSet+AfterSerialize" preserve="all"/>
|
||
|
||
<!-- 类型解析和构造器支持 -->
|
||
<type fullname="ProtoBuf.Meta.MetaType+Constructor" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType+Field" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType+Property" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember+FieldInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember+PropertyInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MetaType+Resolver" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.ValueMember+Resolver" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.TupleConstructorInfo" preserve="all"/>
|
||
<type fullname="ProtoBuf.Meta.MutableList" preserve="all"/>
|
||
</assembly>
|
||
|
||
<!-- 保留泛型集合类型(如果使用了的话) -->
|
||
<assembly fullname="System.Core">
|
||
<!-- 泛型集合的核心类型 -->
|
||
<type fullname="System.Collections.Generic.List`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.List`1+Enumerator" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Dictionary`2" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Dictionary`2+Enumerator" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Dictionary`2+KeyCollection" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Dictionary`2+ValueCollection" preserve="all"/>
|
||
|
||
<!-- 泛型集合的接口和基类 -->
|
||
<type fullname="System.Collections.Generic.IList`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.ICollection`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.IEnumerable`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.IEnumerator`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.IDictionary`2" preserve="all"/>
|
||
|
||
<!-- 集合的抽象基类 -->
|
||
<type fullname="System.Collections.Generic.Collection`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.KeyedCollection`2" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.ReadOnlyCollection`1" preserve="all"/>
|
||
|
||
<!-- 泛型集合的特殊内部类型 -->
|
||
<type fullname="System.Collections.Generic.List`1+Enumerator" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Dictionary`2+Enumerator" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Dictionary`2+KeyCollection" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Dictionary`2+ValueCollection" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Queue`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Queue`1+Enumerator" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Stack`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Stack`1+Enumerator" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.HashSet`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.HashSet`1+Enumerator" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.LinkedList`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.LinkedList`1+Enumerator" preserve="all"/>
|
||
|
||
<!-- 泛型集合的特殊嵌套类型 -->
|
||
<type fullname="System.Collections.Generic.KeyValuePair`2" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.KeyValuePair`2+Enumerator" preserve="all"/>
|
||
</assembly>
|
||
|
||
<!-- 保留System核心类型 -->
|
||
<assembly fullname="System">
|
||
<!-- 基础类型 -->
|
||
<type fullname="System.String" preserve="all"/>
|
||
<type fullname="System.Int32" preserve="all"/>
|
||
<type fullname="System.Int64" preserve="all"/>
|
||
<type fullname="System.Boolean" preserve="all"/>
|
||
<type fullname="System.Byte" preserve="all"/>
|
||
<type fullname="System.SByte" preserve="all"/>
|
||
<type fullname="System.UInt16" preserve="all"/>
|
||
<type fullname="System.UInt32" preserve="all"/>
|
||
<type fullname="System.UInt64" preserve="all"/>
|
||
<type fullname="System.Single" preserve="all"/>
|
||
<type fullname="System.Double" preserve="all"/>
|
||
<type fullname="System.Decimal" preserve="all"/>
|
||
<type fullname="System.DateTime" preserve="all"/>
|
||
<type fullname="System.Guid" preserve="all"/>
|
||
|
||
<!-- 枚举支持 - 关键:解决枚举反序列化问题 -->
|
||
<type fullname="System.Enum" preserve="all"/>
|
||
<type fullname="System.FlagsAttribute" preserve="all"/>
|
||
<type fullname="System.ComponentModel.DefaultValueAttribute" preserve="all"/>
|
||
<type fullname="System.ComponentModel.DescriptionAttribute" preserve="all"/>
|
||
|
||
<!-- 数值类型转换支持 -->
|
||
<type fullname="System.Convert" preserve="all"/>
|
||
<type fullname="System.IConvertible" preserve="all"/>
|
||
<type fullname="System.IFormattable" preserve="all"/>
|
||
|
||
<!-- 参数信息和方法签名 - 关键:解决GetTypeModifiers问题 -->
|
||
<type fullname="System.Reflection.ParameterInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.MethodInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.MethodBase" preserve="all"/>
|
||
<type fullname="System.Reflection.MemberInfo" preserve="all"/>
|
||
<type fullname="System.Runtime.InteropServices.Marshal" preserve="all"/>
|
||
<type fullname="System.Runtime.CompilerServices.RuntimeHelpers" preserve="all"/>
|
||
|
||
<!-- 关键:添加泛型类型参数修饰符支持 - 解决IL2CPP不支持的问题 -->
|
||
<type fullname="System.Reflection.RuntimeParameterInfo" preserve="all"/>
|
||
<type fullname="System.RuntimeType" preserve="all"/>
|
||
<type fullname="System.RuntimeTypeHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeMethodHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeFieldHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeParameterHandle" preserve="all"/>
|
||
<type fullname="System.RuntimeArgumentHandle" preserve="all"/>
|
||
|
||
<!-- 额外的运行时类型支持 - 针对ParameterInfo内部调用 -->
|
||
<type fullname="System.RuntimeType+RuntimeTypeCache" preserve="all"/>
|
||
<type fullname="System.RuntimeMethodInfo" preserve="all"/>
|
||
<type fullname="System.RuntimeConstructorInfo" preserve="all"/>
|
||
<type fullname="System.RuntimePropertyInfo" preserve="all"/>
|
||
<type fullname="System.RuntimeFieldInfo" preserve="all"/>
|
||
<type fullname="System.RuntimeEventInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.RuntimeModule" preserve="all"/>
|
||
<type fullname="System.Reflection.RuntimeAssembly" preserve="all"/>
|
||
|
||
<!-- 参数和方法签名支持 -->
|
||
<type fullname="System.Reflection.ParameterModifier" preserve="all"/>
|
||
<type fullname="System.Reflection.MethodImplAttributes" preserve="all"/>
|
||
<type fullname="System.Reflection.CallingConventions" preserve="all"/>
|
||
<type fullname="System.Reflection.MethodSemanticsAttributes" preserve="all"/>
|
||
|
||
<!-- 泛型集合支持 - 关键:解决复杂嵌套泛型序列化问题 -->
|
||
<type fullname="System.Collections.Generic.List`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Dictionary`2" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.IList`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.ICollection`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.IEnumerable`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.IDictionary`2" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.IEnumerator`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.KeyValuePair`2" preserve="all"/>
|
||
|
||
<!-- 额外的泛型类型支持 -->
|
||
<type fullname="System.Collections.Generic.Queue`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.Stack`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.HashSet`1" preserve="all"/>
|
||
<type fullname="System.Collections.Generic.LinkedList`1" preserve="all"/>
|
||
|
||
<!-- 额外的反射支持 - 解决IL2CPP反射问题 -->
|
||
<type fullname="System.Reflection.RuntimeMethodInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.RuntimeConstructorInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.RuntimePropertyInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.RuntimeFieldInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.RuntimeEventInfo" preserve="all"/>
|
||
<type fullname="System.Reflection.RuntimeModule" preserve="all"/>
|
||
<type fullname="System.Reflection.RuntimeAssembly" preserve="all"/>
|
||
|
||
<!-- 类型构造器支持 -->
|
||
<type fullname="System.RuntimeType" preserve="all"/>
|
||
<type fullname="System.RuntimeType+RuntimeTypeCache" preserve="all"/>
|
||
<type fullname="System.Type" preserve="all"/>
|
||
<type fullname="System.TypeInitializationException" preserve="all"/>
|
||
|
||
<!-- 关键:禁用参数修饰符检查的反射支持 -->
|
||
<type fullname="System.Reflection.ParameterModifier" preserve="all"/>
|
||
<type fullname="System.Reflection.Binder" preserve="all"/>
|
||
<type fullname="System.Reflection.DefaultBinder" preserve="all"/>
|
||
</assembly>
|
||
|
||
<!-- 保留Unity核心程序集 -->
|
||
<assembly fullname="UnityEngine.CoreModule">
|
||
<!-- Unity基础类型 -->
|
||
<type fullname="UnityEngine.Debug" preserve="all"/>
|
||
<type fullname="UnityEngine.Application" preserve="all"/>
|
||
<type fullname="UnityEngine.SystemInfo" preserve="all"/>
|
||
</assembly>
|
||
</linker>
|