using FishNet.Utility; using System; using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo(UtilityConstants.CODEGEN_ASSEMBLY_NAME)] namespace FishNet.CodeGenerating { /// /// Allows a SyncType to be mutable. /// public class AllowMutableSyncTypeAttribute : Attribute { } /// /// Type will be included in auto serializer creation. /// [AttributeUsage((AttributeTargets.Class | AttributeTargets.Struct), Inherited = true, AllowMultiple = false)] public class IncludeSerializationAttribute : Attribute { } /// /// Type will be excluded from auto serializer creation. /// public class ExcludeSerializationAttribute : Attribute { } /// /// Method will not be considered a writer or reader. /// public class NotSerializerAttribute : Attribute { } /// /// Method or type will be made public by codegen. /// internal class MakePublicAttribute : Attribute { } /// /// Method is a comparer for a value type. /// public class CustomComparerAttribute : Attribute { } /// /// Used on a type when you want a custom serializer to be global across all assemblies. /// [AttributeUsage((AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Interface), Inherited = true, AllowMultiple = false)] public class UseGlobalCustomSerializerAttribute : Attribute { } /// /// Uses built-in caches to retrieve read classes rather than initializing a new instance. /// This attribute is primarily for internal use and may change at anytime without notice. /// [AttributeUsage((AttributeTargets.Class), Inherited = true, AllowMultiple = false)] public class ReadUnallocatedAttribute : Attribute { } /// /// Indicates a method is the default writer for a type. The first non-extension parameter indicates the type this writer is for. /// This attribute is primarily for internal use and may change at anytime without notice. /// public class DefaultWriterAttribute : Attribute { } /// /// Indicates a method is the default reader for a type. The return type indicates what type the reader is for. /// This attribute is primarily for internal use and may change at anytime without notice. /// public class DefaultReaderAttribute : Attribute { } /// /// Indicates a method is a delta writer. The first non-extension parameter indicates the type this writer is for. /// This attribute is primarily for internal use and may change at anytime without notice. /// public class DefaultDeltaWriterAttribute : Attribute { } /// /// Indicates a method is a delta reader. The return type indicates what type the reader is for. /// This attribute is primarily for internal use and may change at anytime without notice. /// public class DefaultDeltaReaderAttribute : Attribute { } }