mirror of
				https://github.com/pcvolkmer/osc-variant.git
				synced 2025-10-30 16:06:12 +00:00 
			
		
		
		
	Make version entries and categories optional in property catalogue
This commit is contained in:
		| @@ -127,12 +127,12 @@ pub struct Version { | |||||||
|     #[serde(rename = "Revision")] |     #[serde(rename = "Revision")] | ||||||
|     revision: u16, |     revision: u16, | ||||||
|     #[serde(rename = "Entries")] |     #[serde(rename = "Entries")] | ||||||
|     entries: VersionEntries, |     entries: Option<VersionEntries>, | ||||||
|     #[serde(rename = "Abbildung")] |     #[serde(rename = "Abbildung")] | ||||||
|     #[serde(skip_serializing_if = "Option::is_none")] |     #[serde(skip_serializing_if = "Option::is_none")] | ||||||
|     abbildung: Option<Vec<Abbildung>>, |     abbildung: Option<Vec<Abbildung>>, | ||||||
|     #[serde(rename = "Categories")] |     #[serde(rename = "Categories")] | ||||||
|     categories: Categories, |     categories: Option<Categories>, | ||||||
| } | } | ||||||
|  |  | ||||||
| impl Sortable for Version { | impl Sortable for Version { | ||||||
| @@ -151,19 +151,23 @@ impl Sortable for Version { | |||||||
|             }); |             }); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         self.entries |         if let Some(ref mut entries) = self.entries { | ||||||
|  |             entries | ||||||
|                 .content |                 .content | ||||||
|                 .sort_unstable_by_key(|item| item.sorting_key()); |                 .sort_unstable_by_key(|item| item.sorting_key()); | ||||||
|         self.entries.content.iter_mut().for_each(|item| { |             entries.content.iter_mut().for_each(|item| { | ||||||
|                 item.sorted(); |                 item.sorted(); | ||||||
|             }); |             }); | ||||||
|  |         } | ||||||
|  |  | ||||||
|         self.categories |         if let Some(ref mut categories) = self.categories { | ||||||
|  |             categories | ||||||
|                 .content |                 .content | ||||||
|                 .sort_unstable_by_key(|item| item.sorting_key()); |                 .sort_unstable_by_key(|item| item.sorting_key()); | ||||||
|         self.categories.content.iter_mut().for_each(|item| { |             categories.content.iter_mut().for_each(|item| { | ||||||
|                 item.sorted(); |                 item.sorted(); | ||||||
|             }); |             }); | ||||||
|  |         } | ||||||
|  |  | ||||||
|         self |         self | ||||||
|     } |     } | ||||||
| @@ -184,7 +188,7 @@ pub struct VersionEntry { | |||||||
|     #[serde(rename = "ShortDescription")] |     #[serde(rename = "ShortDescription")] | ||||||
|     short_description: String, |     short_description: String, | ||||||
|     #[serde(rename = "Description")] |     #[serde(rename = "Description")] | ||||||
|     description: String, |     description: Option<String>, | ||||||
|     #[serde(rename = "Synonyms", default)] |     #[serde(rename = "Synonyms", default)] | ||||||
|     #[serde(skip_serializing_if = "Option::is_none")] |     #[serde(skip_serializing_if = "Option::is_none")] | ||||||
|     synonyms: Option<String>, |     synonyms: Option<String>, | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user