public static InjectedMethod Serialize(InjectedMethod instance, SimpleXmlSerializerBase serializer) { instance = instance ?? new InjectedMethod(); serializer.ProcessStartElement(nameof(InjectedMethod)); { serializer.ProcessAttributeString(nameof(AssemblyPath), s => instance.AssemblyPath = s, () => instance.AssemblyPath); serializer.ProcessAttributeString(nameof(MethodFullName), s => instance.MethodFullName = s, () => instance.MethodFullName); serializer.ProcessWithFlags( SimpleXmlSerializerFlags.IsOptional, () => { serializer.ProcessEnumAttribute(nameof(InjectionPosition), s => instance.InjectionPosition = s, () => instance.InjectionPosition); }); } serializer.ProcessEnterChildOnRead(); serializer.ProcessEndElement(); return(instance); }