public static IgnoredMemberReferencesIncludeLoader Serialize(
                IgnoredMemberReferencesIncludeLoader instance, SimpleXmlSerializerBase serializer
                )
            {
                instance = instance ?? new IgnoredMemberReferencesIncludeLoader();
                FileIncludeLoader <IIgnoredMemberReference> .Serialize(instance, serializer);

                return(instance);
            }
            public static AllowedAssemblyReferenceIncludeLoader Serialize(
                AllowedAssemblyReferenceIncludeLoader instance, SimpleXmlSerializerBase serializer
                )
            {
                instance = instance ?? new AllowedAssemblyReferenceIncludeLoader();
                FileIncludeLoader <IAllowedAssemblyReference> .Serialize(instance, serializer);

                return(instance);
            }
            public static FileIncludeLoader <TItem> Serialize(FileIncludeLoader <TItem> instance, SimpleXmlSerializerBase serializer)
            {
                instance = instance ?? throw new ArgumentNullException(nameof(instance));

                // Skip root element when reading
                serializer.ProcessEnterChildOnRead();

                serializer.ProcessCollection(
                    instance.Items,
                    itemSerializer => serializer.CreateByKnownInheritors <TItem>(
                        serializer.CurrentXmlElement.Name,
                        itemSerializer
                        ));

                return(instance);
            }