1use super::*;
2#[cfg_attr(feature = "derive-debug", derive(Debug))]
4#[cfg_attr(feature = "derive-clone", derive(Clone))]
5#[deprecated = "This schema is superseded by <https://schema.org/InteractionCounter>."]
6pub struct UserBlocks {
7 pub r#about: Vec<AboutProperty>,
9 pub r#actor: Vec<ActorProperty>,
11 pub r#aggregate_rating: Vec<AggregateRatingProperty>,
13 pub r#attendee: Vec<AttendeeProperty>,
15 #[deprecated = "This schema is superseded by <https://schema.org/attendee>."]
17 pub r#attendees: Vec<AttendeesProperty>,
18 pub r#audience: Vec<AudienceProperty>,
20 pub r#composer: Vec<ComposerProperty>,
22 pub r#contributor: Vec<ContributorProperty>,
24 pub r#director: Vec<DirectorProperty>,
26 pub r#door_time: Vec<DoorTimeProperty>,
28 pub r#duration: Vec<DurationProperty>,
30 pub r#end_date: Vec<EndDateProperty>,
32 pub r#event_attendance_mode: Vec<EventAttendanceModeProperty>,
34 pub r#event_schedule: Vec<EventScheduleProperty>,
36 pub r#event_status: Vec<EventStatusProperty>,
38 pub r#funder: Vec<FunderProperty>,
40 pub r#funding: Vec<FundingProperty>,
42 pub r#in_language: Vec<InLanguageProperty>,
44 pub r#is_accessible_for_free: Vec<IsAccessibleForFreeProperty>,
46 pub r#keywords: Vec<KeywordsProperty>,
48 pub r#location: Vec<LocationProperty>,
50 pub r#maximum_attendee_capacity: Vec<MaximumAttendeeCapacityProperty>,
52 pub r#maximum_physical_attendee_capacity: Vec<MaximumPhysicalAttendeeCapacityProperty>,
54 pub r#maximum_virtual_attendee_capacity: Vec<MaximumVirtualAttendeeCapacityProperty>,
56 pub r#offers: Vec<OffersProperty>,
58 pub r#organizer: Vec<OrganizerProperty>,
60 pub r#performer: Vec<PerformerProperty>,
62 #[deprecated = "This schema is superseded by <https://schema.org/performer>."]
64 pub r#performers: Vec<PerformersProperty>,
65 pub r#previous_start_date: Vec<PreviousStartDateProperty>,
67 pub r#recorded_in: Vec<RecordedInProperty>,
69 pub r#remaining_attendee_capacity: Vec<RemainingAttendeeCapacityProperty>,
71 pub r#review: Vec<ReviewProperty>,
73 pub r#sponsor: Vec<SponsorProperty>,
75 pub r#start_date: Vec<StartDateProperty>,
77 pub r#sub_event: Vec<SubEventProperty>,
79 #[deprecated = "This schema is superseded by <https://schema.org/subEvent>."]
81 pub r#sub_events: Vec<SubEventsProperty>,
82 pub r#super_event: Vec<SuperEventProperty>,
84 pub r#translator: Vec<TranslatorProperty>,
86 pub r#typical_age_range: Vec<TypicalAgeRangeProperty>,
88 pub r#work_featured: Vec<WorkFeaturedProperty>,
90 pub r#work_performed: Vec<WorkPerformedProperty>,
92 pub r#additional_type: Vec<AdditionalTypeProperty>,
94 pub r#alternate_name: Vec<AlternateNameProperty>,
96 pub r#description: Vec<DescriptionProperty>,
98 pub r#disambiguating_description: Vec<DisambiguatingDescriptionProperty>,
100 pub r#identifier: Vec<IdentifierProperty>,
102 pub r#image: Vec<ImageProperty>,
104 pub r#main_entity_of_page: Vec<MainEntityOfPageProperty>,
106 pub r#name: Vec<NameProperty>,
108 pub r#potential_action: Vec<PotentialActionProperty>,
110 pub r#same_as: Vec<SameAsProperty>,
112 pub r#subject_of: Vec<SubjectOfProperty>,
114 pub r#url: Vec<UrlProperty>,
116}
117#[deprecated = "This schema is superseded by <https://schema.org/InteractionCounter>."]
119pub trait UserBlocksTrait {}
120impl UserBlocksTrait for UserBlocks {}
121impl EventTrait for UserBlocks {
122 fn get_about(&self) -> &[AboutProperty] {
123 self.r#about.as_slice()
124 }
125 fn take_about(&mut self) -> Vec<AboutProperty> {
126 std::mem::take(&mut self.r#about)
127 }
128 fn get_actor(&self) -> &[ActorProperty] {
129 self.r#actor.as_slice()
130 }
131 fn take_actor(&mut self) -> Vec<ActorProperty> {
132 std::mem::take(&mut self.r#actor)
133 }
134 fn get_aggregate_rating(&self) -> &[AggregateRatingProperty] {
135 self.r#aggregate_rating.as_slice()
136 }
137 fn take_aggregate_rating(&mut self) -> Vec<AggregateRatingProperty> {
138 std::mem::take(&mut self.r#aggregate_rating)
139 }
140 fn get_attendee(&self) -> &[AttendeeProperty] {
141 self.r#attendee.as_slice()
142 }
143 fn take_attendee(&mut self) -> Vec<AttendeeProperty> {
144 std::mem::take(&mut self.r#attendee)
145 }
146 fn get_attendees(&self) -> &[AttendeesProperty] {
147 self.r#attendees.as_slice()
148 }
149 fn take_attendees(&mut self) -> Vec<AttendeesProperty> {
150 std::mem::take(&mut self.r#attendees)
151 }
152 fn get_audience(&self) -> &[AudienceProperty] {
153 self.r#audience.as_slice()
154 }
155 fn take_audience(&mut self) -> Vec<AudienceProperty> {
156 std::mem::take(&mut self.r#audience)
157 }
158 fn get_composer(&self) -> &[ComposerProperty] {
159 self.r#composer.as_slice()
160 }
161 fn take_composer(&mut self) -> Vec<ComposerProperty> {
162 std::mem::take(&mut self.r#composer)
163 }
164 fn get_contributor(&self) -> &[ContributorProperty] {
165 self.r#contributor.as_slice()
166 }
167 fn take_contributor(&mut self) -> Vec<ContributorProperty> {
168 std::mem::take(&mut self.r#contributor)
169 }
170 fn get_director(&self) -> &[DirectorProperty] {
171 self.r#director.as_slice()
172 }
173 fn take_director(&mut self) -> Vec<DirectorProperty> {
174 std::mem::take(&mut self.r#director)
175 }
176 fn get_door_time(&self) -> &[DoorTimeProperty] {
177 self.r#door_time.as_slice()
178 }
179 fn take_door_time(&mut self) -> Vec<DoorTimeProperty> {
180 std::mem::take(&mut self.r#door_time)
181 }
182 fn get_duration(&self) -> &[DurationProperty] {
183 self.r#duration.as_slice()
184 }
185 fn take_duration(&mut self) -> Vec<DurationProperty> {
186 std::mem::take(&mut self.r#duration)
187 }
188 fn get_end_date(&self) -> &[EndDateProperty] {
189 self.r#end_date.as_slice()
190 }
191 fn take_end_date(&mut self) -> Vec<EndDateProperty> {
192 std::mem::take(&mut self.r#end_date)
193 }
194 fn get_event_attendance_mode(&self) -> &[EventAttendanceModeProperty] {
195 self.r#event_attendance_mode.as_slice()
196 }
197 fn take_event_attendance_mode(&mut self) -> Vec<EventAttendanceModeProperty> {
198 std::mem::take(&mut self.r#event_attendance_mode)
199 }
200 fn get_event_schedule(&self) -> &[EventScheduleProperty] {
201 self.r#event_schedule.as_slice()
202 }
203 fn take_event_schedule(&mut self) -> Vec<EventScheduleProperty> {
204 std::mem::take(&mut self.r#event_schedule)
205 }
206 fn get_event_status(&self) -> &[EventStatusProperty] {
207 self.r#event_status.as_slice()
208 }
209 fn take_event_status(&mut self) -> Vec<EventStatusProperty> {
210 std::mem::take(&mut self.r#event_status)
211 }
212 fn get_funder(&self) -> &[FunderProperty] {
213 self.r#funder.as_slice()
214 }
215 fn take_funder(&mut self) -> Vec<FunderProperty> {
216 std::mem::take(&mut self.r#funder)
217 }
218 fn get_funding(&self) -> &[FundingProperty] {
219 self.r#funding.as_slice()
220 }
221 fn take_funding(&mut self) -> Vec<FundingProperty> {
222 std::mem::take(&mut self.r#funding)
223 }
224 fn get_in_language(&self) -> &[InLanguageProperty] {
225 self.r#in_language.as_slice()
226 }
227 fn take_in_language(&mut self) -> Vec<InLanguageProperty> {
228 std::mem::take(&mut self.r#in_language)
229 }
230 fn get_is_accessible_for_free(&self) -> &[IsAccessibleForFreeProperty] {
231 self.r#is_accessible_for_free.as_slice()
232 }
233 fn take_is_accessible_for_free(&mut self) -> Vec<IsAccessibleForFreeProperty> {
234 std::mem::take(&mut self.r#is_accessible_for_free)
235 }
236 fn get_keywords(&self) -> &[KeywordsProperty] {
237 self.r#keywords.as_slice()
238 }
239 fn take_keywords(&mut self) -> Vec<KeywordsProperty> {
240 std::mem::take(&mut self.r#keywords)
241 }
242 fn get_location(&self) -> &[LocationProperty] {
243 self.r#location.as_slice()
244 }
245 fn take_location(&mut self) -> Vec<LocationProperty> {
246 std::mem::take(&mut self.r#location)
247 }
248 fn get_maximum_attendee_capacity(&self) -> &[MaximumAttendeeCapacityProperty] {
249 self.r#maximum_attendee_capacity.as_slice()
250 }
251 fn take_maximum_attendee_capacity(&mut self) -> Vec<MaximumAttendeeCapacityProperty> {
252 std::mem::take(&mut self.r#maximum_attendee_capacity)
253 }
254 fn get_maximum_physical_attendee_capacity(&self) -> &[MaximumPhysicalAttendeeCapacityProperty] {
255 self.r#maximum_physical_attendee_capacity.as_slice()
256 }
257 fn take_maximum_physical_attendee_capacity(
258 &mut self,
259 ) -> Vec<MaximumPhysicalAttendeeCapacityProperty> {
260 std::mem::take(&mut self.r#maximum_physical_attendee_capacity)
261 }
262 fn get_maximum_virtual_attendee_capacity(&self) -> &[MaximumVirtualAttendeeCapacityProperty] {
263 self.r#maximum_virtual_attendee_capacity.as_slice()
264 }
265 fn take_maximum_virtual_attendee_capacity(
266 &mut self,
267 ) -> Vec<MaximumVirtualAttendeeCapacityProperty> {
268 std::mem::take(&mut self.r#maximum_virtual_attendee_capacity)
269 }
270 fn get_offers(&self) -> &[OffersProperty] {
271 self.r#offers.as_slice()
272 }
273 fn take_offers(&mut self) -> Vec<OffersProperty> {
274 std::mem::take(&mut self.r#offers)
275 }
276 fn get_organizer(&self) -> &[OrganizerProperty] {
277 self.r#organizer.as_slice()
278 }
279 fn take_organizer(&mut self) -> Vec<OrganizerProperty> {
280 std::mem::take(&mut self.r#organizer)
281 }
282 fn get_performer(&self) -> &[PerformerProperty] {
283 self.r#performer.as_slice()
284 }
285 fn take_performer(&mut self) -> Vec<PerformerProperty> {
286 std::mem::take(&mut self.r#performer)
287 }
288 fn get_performers(&self) -> &[PerformersProperty] {
289 self.r#performers.as_slice()
290 }
291 fn take_performers(&mut self) -> Vec<PerformersProperty> {
292 std::mem::take(&mut self.r#performers)
293 }
294 fn get_previous_start_date(&self) -> &[PreviousStartDateProperty] {
295 self.r#previous_start_date.as_slice()
296 }
297 fn take_previous_start_date(&mut self) -> Vec<PreviousStartDateProperty> {
298 std::mem::take(&mut self.r#previous_start_date)
299 }
300 fn get_recorded_in(&self) -> &[RecordedInProperty] {
301 self.r#recorded_in.as_slice()
302 }
303 fn take_recorded_in(&mut self) -> Vec<RecordedInProperty> {
304 std::mem::take(&mut self.r#recorded_in)
305 }
306 fn get_remaining_attendee_capacity(&self) -> &[RemainingAttendeeCapacityProperty] {
307 self.r#remaining_attendee_capacity.as_slice()
308 }
309 fn take_remaining_attendee_capacity(&mut self) -> Vec<RemainingAttendeeCapacityProperty> {
310 std::mem::take(&mut self.r#remaining_attendee_capacity)
311 }
312 fn get_review(&self) -> &[ReviewProperty] {
313 self.r#review.as_slice()
314 }
315 fn take_review(&mut self) -> Vec<ReviewProperty> {
316 std::mem::take(&mut self.r#review)
317 }
318 fn get_sponsor(&self) -> &[SponsorProperty] {
319 self.r#sponsor.as_slice()
320 }
321 fn take_sponsor(&mut self) -> Vec<SponsorProperty> {
322 std::mem::take(&mut self.r#sponsor)
323 }
324 fn get_start_date(&self) -> &[StartDateProperty] {
325 self.r#start_date.as_slice()
326 }
327 fn take_start_date(&mut self) -> Vec<StartDateProperty> {
328 std::mem::take(&mut self.r#start_date)
329 }
330 fn get_sub_event(&self) -> &[SubEventProperty] {
331 self.r#sub_event.as_slice()
332 }
333 fn take_sub_event(&mut self) -> Vec<SubEventProperty> {
334 std::mem::take(&mut self.r#sub_event)
335 }
336 fn get_sub_events(&self) -> &[SubEventsProperty] {
337 self.r#sub_events.as_slice()
338 }
339 fn take_sub_events(&mut self) -> Vec<SubEventsProperty> {
340 std::mem::take(&mut self.r#sub_events)
341 }
342 fn get_super_event(&self) -> &[SuperEventProperty] {
343 self.r#super_event.as_slice()
344 }
345 fn take_super_event(&mut self) -> Vec<SuperEventProperty> {
346 std::mem::take(&mut self.r#super_event)
347 }
348 fn get_translator(&self) -> &[TranslatorProperty] {
349 self.r#translator.as_slice()
350 }
351 fn take_translator(&mut self) -> Vec<TranslatorProperty> {
352 std::mem::take(&mut self.r#translator)
353 }
354 fn get_typical_age_range(&self) -> &[TypicalAgeRangeProperty] {
355 self.r#typical_age_range.as_slice()
356 }
357 fn take_typical_age_range(&mut self) -> Vec<TypicalAgeRangeProperty> {
358 std::mem::take(&mut self.r#typical_age_range)
359 }
360 fn get_work_featured(&self) -> &[WorkFeaturedProperty] {
361 self.r#work_featured.as_slice()
362 }
363 fn take_work_featured(&mut self) -> Vec<WorkFeaturedProperty> {
364 std::mem::take(&mut self.r#work_featured)
365 }
366 fn get_work_performed(&self) -> &[WorkPerformedProperty] {
367 self.r#work_performed.as_slice()
368 }
369 fn take_work_performed(&mut self) -> Vec<WorkPerformedProperty> {
370 std::mem::take(&mut self.r#work_performed)
371 }
372}
373impl ThingTrait for UserBlocks {
374 fn get_additional_type(&self) -> &[AdditionalTypeProperty] {
375 self.r#additional_type.as_slice()
376 }
377 fn take_additional_type(&mut self) -> Vec<AdditionalTypeProperty> {
378 std::mem::take(&mut self.r#additional_type)
379 }
380 fn get_alternate_name(&self) -> &[AlternateNameProperty] {
381 self.r#alternate_name.as_slice()
382 }
383 fn take_alternate_name(&mut self) -> Vec<AlternateNameProperty> {
384 std::mem::take(&mut self.r#alternate_name)
385 }
386 fn get_description(&self) -> &[DescriptionProperty] {
387 self.r#description.as_slice()
388 }
389 fn take_description(&mut self) -> Vec<DescriptionProperty> {
390 std::mem::take(&mut self.r#description)
391 }
392 fn get_disambiguating_description(&self) -> &[DisambiguatingDescriptionProperty] {
393 self.r#disambiguating_description.as_slice()
394 }
395 fn take_disambiguating_description(&mut self) -> Vec<DisambiguatingDescriptionProperty> {
396 std::mem::take(&mut self.r#disambiguating_description)
397 }
398 fn get_identifier(&self) -> &[IdentifierProperty] {
399 self.r#identifier.as_slice()
400 }
401 fn take_identifier(&mut self) -> Vec<IdentifierProperty> {
402 std::mem::take(&mut self.r#identifier)
403 }
404 fn get_image(&self) -> &[ImageProperty] {
405 self.r#image.as_slice()
406 }
407 fn take_image(&mut self) -> Vec<ImageProperty> {
408 std::mem::take(&mut self.r#image)
409 }
410 fn get_main_entity_of_page(&self) -> &[MainEntityOfPageProperty] {
411 self.r#main_entity_of_page.as_slice()
412 }
413 fn take_main_entity_of_page(&mut self) -> Vec<MainEntityOfPageProperty> {
414 std::mem::take(&mut self.r#main_entity_of_page)
415 }
416 fn get_name(&self) -> &[NameProperty] {
417 self.r#name.as_slice()
418 }
419 fn take_name(&mut self) -> Vec<NameProperty> {
420 std::mem::take(&mut self.r#name)
421 }
422 fn get_potential_action(&self) -> &[PotentialActionProperty] {
423 self.r#potential_action.as_slice()
424 }
425 fn take_potential_action(&mut self) -> Vec<PotentialActionProperty> {
426 std::mem::take(&mut self.r#potential_action)
427 }
428 fn get_same_as(&self) -> &[SameAsProperty] {
429 self.r#same_as.as_slice()
430 }
431 fn take_same_as(&mut self) -> Vec<SameAsProperty> {
432 std::mem::take(&mut self.r#same_as)
433 }
434 fn get_subject_of(&self) -> &[SubjectOfProperty] {
435 self.r#subject_of.as_slice()
436 }
437 fn take_subject_of(&mut self) -> Vec<SubjectOfProperty> {
438 std::mem::take(&mut self.r#subject_of)
439 }
440 fn get_url(&self) -> &[UrlProperty] {
441 self.r#url.as_slice()
442 }
443 fn take_url(&mut self) -> Vec<UrlProperty> {
444 std::mem::take(&mut self.r#url)
445 }
446}
447impl UserInteractionTrait for UserBlocks {}
448#[cfg(feature = "serde")]
449mod serde {
450 use std::{fmt, fmt::Formatter};
451
452 use ::serde::{
453 de, de::Visitor, ser::SerializeStruct, Deserialize, Deserializer, Serialize, Serializer,
454 };
455
456 use super::*;
457 impl Serialize for UserBlocks {
458 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
459 where
460 S: Serializer,
461 {
462 let len: usize = [
463 !Vec::is_empty(&self.r#about) as usize,
464 !Vec::is_empty(&self.r#actor) as usize,
465 !Vec::is_empty(&self.r#aggregate_rating) as usize,
466 !Vec::is_empty(&self.r#attendee) as usize,
467 !Vec::is_empty(&self.r#attendees) as usize,
468 !Vec::is_empty(&self.r#audience) as usize,
469 !Vec::is_empty(&self.r#composer) as usize,
470 !Vec::is_empty(&self.r#contributor) as usize,
471 !Vec::is_empty(&self.r#director) as usize,
472 !Vec::is_empty(&self.r#door_time) as usize,
473 !Vec::is_empty(&self.r#duration) as usize,
474 !Vec::is_empty(&self.r#end_date) as usize,
475 !Vec::is_empty(&self.r#event_attendance_mode) as usize,
476 !Vec::is_empty(&self.r#event_schedule) as usize,
477 !Vec::is_empty(&self.r#event_status) as usize,
478 !Vec::is_empty(&self.r#funder) as usize,
479 !Vec::is_empty(&self.r#funding) as usize,
480 !Vec::is_empty(&self.r#in_language) as usize,
481 !Vec::is_empty(&self.r#is_accessible_for_free) as usize,
482 !Vec::is_empty(&self.r#keywords) as usize,
483 !Vec::is_empty(&self.r#location) as usize,
484 !Vec::is_empty(&self.r#maximum_attendee_capacity) as usize,
485 !Vec::is_empty(&self.r#maximum_physical_attendee_capacity) as usize,
486 !Vec::is_empty(&self.r#maximum_virtual_attendee_capacity) as usize,
487 !Vec::is_empty(&self.r#offers) as usize,
488 !Vec::is_empty(&self.r#organizer) as usize,
489 !Vec::is_empty(&self.r#performer) as usize,
490 !Vec::is_empty(&self.r#performers) as usize,
491 !Vec::is_empty(&self.r#previous_start_date) as usize,
492 !Vec::is_empty(&self.r#recorded_in) as usize,
493 !Vec::is_empty(&self.r#remaining_attendee_capacity) as usize,
494 !Vec::is_empty(&self.r#review) as usize,
495 !Vec::is_empty(&self.r#sponsor) as usize,
496 !Vec::is_empty(&self.r#start_date) as usize,
497 !Vec::is_empty(&self.r#sub_event) as usize,
498 !Vec::is_empty(&self.r#sub_events) as usize,
499 !Vec::is_empty(&self.r#super_event) as usize,
500 !Vec::is_empty(&self.r#translator) as usize,
501 !Vec::is_empty(&self.r#typical_age_range) as usize,
502 !Vec::is_empty(&self.r#work_featured) as usize,
503 !Vec::is_empty(&self.r#work_performed) as usize,
504 !Vec::is_empty(&self.r#additional_type) as usize,
505 !Vec::is_empty(&self.r#alternate_name) as usize,
506 !Vec::is_empty(&self.r#description) as usize,
507 !Vec::is_empty(&self.r#disambiguating_description) as usize,
508 !Vec::is_empty(&self.r#identifier) as usize,
509 !Vec::is_empty(&self.r#image) as usize,
510 !Vec::is_empty(&self.r#main_entity_of_page) as usize,
511 !Vec::is_empty(&self.r#name) as usize,
512 !Vec::is_empty(&self.r#potential_action) as usize,
513 !Vec::is_empty(&self.r#same_as) as usize,
514 !Vec::is_empty(&self.r#subject_of) as usize,
515 !Vec::is_empty(&self.r#url) as usize,
516 ]
517 .iter()
518 .sum();
519 let mut serialize_struct = Serializer::serialize_struct(serializer, "UserBlocks", len)?;
520 if !Vec::is_empty(&self.r#about) {
521 serialize_struct.serialize_field("about", {
522 struct SerializeWith<'a>(&'a Vec<AboutProperty>);
523 impl<'a> Serialize for SerializeWith<'a> {
524 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
525 where
526 S: Serializer,
527 {
528 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
529 self.0, serializer,
530 )
531 }
532 }
533 &SerializeWith(&self.r#about)
534 })?;
535 } else {
536 serialize_struct.skip_field("about")?;
537 }
538 if !Vec::is_empty(&self.r#actor) {
539 serialize_struct.serialize_field("actor", {
540 struct SerializeWith<'a>(&'a Vec<ActorProperty>);
541 impl<'a> Serialize for SerializeWith<'a> {
542 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
543 where
544 S: Serializer,
545 {
546 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
547 self.0, serializer,
548 )
549 }
550 }
551 &SerializeWith(&self.r#actor)
552 })?;
553 } else {
554 serialize_struct.skip_field("actor")?;
555 }
556 if !Vec::is_empty(&self.r#aggregate_rating) {
557 serialize_struct.serialize_field("aggregateRating", {
558 struct SerializeWith<'a>(&'a Vec<AggregateRatingProperty>);
559 impl<'a> Serialize for SerializeWith<'a> {
560 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
561 where
562 S: Serializer,
563 {
564 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
565 self.0, serializer,
566 )
567 }
568 }
569 &SerializeWith(&self.r#aggregate_rating)
570 })?;
571 } else {
572 serialize_struct.skip_field("aggregateRating")?;
573 }
574 if !Vec::is_empty(&self.r#attendee) {
575 serialize_struct.serialize_field("attendee", {
576 struct SerializeWith<'a>(&'a Vec<AttendeeProperty>);
577 impl<'a> Serialize for SerializeWith<'a> {
578 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
579 where
580 S: Serializer,
581 {
582 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
583 self.0, serializer,
584 )
585 }
586 }
587 &SerializeWith(&self.r#attendee)
588 })?;
589 } else {
590 serialize_struct.skip_field("attendee")?;
591 }
592 if !Vec::is_empty(&self.r#attendees) {
593 serialize_struct.serialize_field("attendees", {
594 struct SerializeWith<'a>(&'a Vec<AttendeesProperty>);
595 impl<'a> Serialize for SerializeWith<'a> {
596 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
597 where
598 S: Serializer,
599 {
600 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
601 self.0, serializer,
602 )
603 }
604 }
605 &SerializeWith(&self.r#attendees)
606 })?;
607 } else {
608 serialize_struct.skip_field("attendees")?;
609 }
610 if !Vec::is_empty(&self.r#audience) {
611 serialize_struct.serialize_field("audience", {
612 struct SerializeWith<'a>(&'a Vec<AudienceProperty>);
613 impl<'a> Serialize for SerializeWith<'a> {
614 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
615 where
616 S: Serializer,
617 {
618 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
619 self.0, serializer,
620 )
621 }
622 }
623 &SerializeWith(&self.r#audience)
624 })?;
625 } else {
626 serialize_struct.skip_field("audience")?;
627 }
628 if !Vec::is_empty(&self.r#composer) {
629 serialize_struct.serialize_field("composer", {
630 struct SerializeWith<'a>(&'a Vec<ComposerProperty>);
631 impl<'a> Serialize for SerializeWith<'a> {
632 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
633 where
634 S: Serializer,
635 {
636 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
637 self.0, serializer,
638 )
639 }
640 }
641 &SerializeWith(&self.r#composer)
642 })?;
643 } else {
644 serialize_struct.skip_field("composer")?;
645 }
646 if !Vec::is_empty(&self.r#contributor) {
647 serialize_struct.serialize_field("contributor", {
648 struct SerializeWith<'a>(&'a Vec<ContributorProperty>);
649 impl<'a> Serialize for SerializeWith<'a> {
650 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
651 where
652 S: Serializer,
653 {
654 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
655 self.0, serializer,
656 )
657 }
658 }
659 &SerializeWith(&self.r#contributor)
660 })?;
661 } else {
662 serialize_struct.skip_field("contributor")?;
663 }
664 if !Vec::is_empty(&self.r#director) {
665 serialize_struct.serialize_field("director", {
666 struct SerializeWith<'a>(&'a Vec<DirectorProperty>);
667 impl<'a> Serialize for SerializeWith<'a> {
668 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
669 where
670 S: Serializer,
671 {
672 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
673 self.0, serializer,
674 )
675 }
676 }
677 &SerializeWith(&self.r#director)
678 })?;
679 } else {
680 serialize_struct.skip_field("director")?;
681 }
682 if !Vec::is_empty(&self.r#door_time) {
683 serialize_struct.serialize_field("doorTime", {
684 struct SerializeWith<'a>(&'a Vec<DoorTimeProperty>);
685 impl<'a> Serialize for SerializeWith<'a> {
686 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
687 where
688 S: Serializer,
689 {
690 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
691 self.0, serializer,
692 )
693 }
694 }
695 &SerializeWith(&self.r#door_time)
696 })?;
697 } else {
698 serialize_struct.skip_field("doorTime")?;
699 }
700 if !Vec::is_empty(&self.r#duration) {
701 serialize_struct.serialize_field("duration", {
702 struct SerializeWith<'a>(&'a Vec<DurationProperty>);
703 impl<'a> Serialize for SerializeWith<'a> {
704 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
705 where
706 S: Serializer,
707 {
708 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
709 self.0, serializer,
710 )
711 }
712 }
713 &SerializeWith(&self.r#duration)
714 })?;
715 } else {
716 serialize_struct.skip_field("duration")?;
717 }
718 if !Vec::is_empty(&self.r#end_date) {
719 serialize_struct.serialize_field("endDate", {
720 struct SerializeWith<'a>(&'a Vec<EndDateProperty>);
721 impl<'a> Serialize for SerializeWith<'a> {
722 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
723 where
724 S: Serializer,
725 {
726 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
727 self.0, serializer,
728 )
729 }
730 }
731 &SerializeWith(&self.r#end_date)
732 })?;
733 } else {
734 serialize_struct.skip_field("endDate")?;
735 }
736 if !Vec::is_empty(&self.r#event_attendance_mode) {
737 serialize_struct.serialize_field("eventAttendanceMode", {
738 struct SerializeWith<'a>(&'a Vec<EventAttendanceModeProperty>);
739 impl<'a> Serialize for SerializeWith<'a> {
740 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
741 where
742 S: Serializer,
743 {
744 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
745 self.0, serializer,
746 )
747 }
748 }
749 &SerializeWith(&self.r#event_attendance_mode)
750 })?;
751 } else {
752 serialize_struct.skip_field("eventAttendanceMode")?;
753 }
754 if !Vec::is_empty(&self.r#event_schedule) {
755 serialize_struct.serialize_field("eventSchedule", {
756 struct SerializeWith<'a>(&'a Vec<EventScheduleProperty>);
757 impl<'a> Serialize for SerializeWith<'a> {
758 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
759 where
760 S: Serializer,
761 {
762 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
763 self.0, serializer,
764 )
765 }
766 }
767 &SerializeWith(&self.r#event_schedule)
768 })?;
769 } else {
770 serialize_struct.skip_field("eventSchedule")?;
771 }
772 if !Vec::is_empty(&self.r#event_status) {
773 serialize_struct.serialize_field("eventStatus", {
774 struct SerializeWith<'a>(&'a Vec<EventStatusProperty>);
775 impl<'a> Serialize for SerializeWith<'a> {
776 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
777 where
778 S: Serializer,
779 {
780 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
781 self.0, serializer,
782 )
783 }
784 }
785 &SerializeWith(&self.r#event_status)
786 })?;
787 } else {
788 serialize_struct.skip_field("eventStatus")?;
789 }
790 if !Vec::is_empty(&self.r#funder) {
791 serialize_struct.serialize_field("funder", {
792 struct SerializeWith<'a>(&'a Vec<FunderProperty>);
793 impl<'a> Serialize for SerializeWith<'a> {
794 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
795 where
796 S: Serializer,
797 {
798 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
799 self.0, serializer,
800 )
801 }
802 }
803 &SerializeWith(&self.r#funder)
804 })?;
805 } else {
806 serialize_struct.skip_field("funder")?;
807 }
808 if !Vec::is_empty(&self.r#funding) {
809 serialize_struct.serialize_field("funding", {
810 struct SerializeWith<'a>(&'a Vec<FundingProperty>);
811 impl<'a> Serialize for SerializeWith<'a> {
812 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
813 where
814 S: Serializer,
815 {
816 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
817 self.0, serializer,
818 )
819 }
820 }
821 &SerializeWith(&self.r#funding)
822 })?;
823 } else {
824 serialize_struct.skip_field("funding")?;
825 }
826 if !Vec::is_empty(&self.r#in_language) {
827 serialize_struct.serialize_field("inLanguage", {
828 struct SerializeWith<'a>(&'a Vec<InLanguageProperty>);
829 impl<'a> Serialize for SerializeWith<'a> {
830 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
831 where
832 S: Serializer,
833 {
834 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
835 self.0, serializer,
836 )
837 }
838 }
839 &SerializeWith(&self.r#in_language)
840 })?;
841 } else {
842 serialize_struct.skip_field("inLanguage")?;
843 }
844 if !Vec::is_empty(&self.r#is_accessible_for_free) {
845 serialize_struct.serialize_field("isAccessibleForFree", {
846 struct SerializeWith<'a>(&'a Vec<IsAccessibleForFreeProperty>);
847 impl<'a> Serialize for SerializeWith<'a> {
848 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
849 where
850 S: Serializer,
851 {
852 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
853 self.0, serializer,
854 )
855 }
856 }
857 &SerializeWith(&self.r#is_accessible_for_free)
858 })?;
859 } else {
860 serialize_struct.skip_field("isAccessibleForFree")?;
861 }
862 if !Vec::is_empty(&self.r#keywords) {
863 serialize_struct.serialize_field("keywords", {
864 struct SerializeWith<'a>(&'a Vec<KeywordsProperty>);
865 impl<'a> Serialize for SerializeWith<'a> {
866 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
867 where
868 S: Serializer,
869 {
870 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
871 self.0, serializer,
872 )
873 }
874 }
875 &SerializeWith(&self.r#keywords)
876 })?;
877 } else {
878 serialize_struct.skip_field("keywords")?;
879 }
880 if !Vec::is_empty(&self.r#location) {
881 serialize_struct.serialize_field("location", {
882 struct SerializeWith<'a>(&'a Vec<LocationProperty>);
883 impl<'a> Serialize for SerializeWith<'a> {
884 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
885 where
886 S: Serializer,
887 {
888 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
889 self.0, serializer,
890 )
891 }
892 }
893 &SerializeWith(&self.r#location)
894 })?;
895 } else {
896 serialize_struct.skip_field("location")?;
897 }
898 if !Vec::is_empty(&self.r#maximum_attendee_capacity) {
899 serialize_struct.serialize_field("maximumAttendeeCapacity", {
900 struct SerializeWith<'a>(&'a Vec<MaximumAttendeeCapacityProperty>);
901 impl<'a> Serialize for SerializeWith<'a> {
902 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
903 where
904 S: Serializer,
905 {
906 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
907 self.0, serializer,
908 )
909 }
910 }
911 &SerializeWith(&self.r#maximum_attendee_capacity)
912 })?;
913 } else {
914 serialize_struct.skip_field("maximumAttendeeCapacity")?;
915 }
916 if !Vec::is_empty(&self.r#maximum_physical_attendee_capacity) {
917 serialize_struct.serialize_field("maximumPhysicalAttendeeCapacity", {
918 struct SerializeWith<'a>(&'a Vec<MaximumPhysicalAttendeeCapacityProperty>);
919 impl<'a> Serialize for SerializeWith<'a> {
920 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
921 where
922 S: Serializer,
923 {
924 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
925 self.0, serializer,
926 )
927 }
928 }
929 &SerializeWith(&self.r#maximum_physical_attendee_capacity)
930 })?;
931 } else {
932 serialize_struct.skip_field("maximumPhysicalAttendeeCapacity")?;
933 }
934 if !Vec::is_empty(&self.r#maximum_virtual_attendee_capacity) {
935 serialize_struct.serialize_field("maximumVirtualAttendeeCapacity", {
936 struct SerializeWith<'a>(&'a Vec<MaximumVirtualAttendeeCapacityProperty>);
937 impl<'a> Serialize for SerializeWith<'a> {
938 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
939 where
940 S: Serializer,
941 {
942 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
943 self.0, serializer,
944 )
945 }
946 }
947 &SerializeWith(&self.r#maximum_virtual_attendee_capacity)
948 })?;
949 } else {
950 serialize_struct.skip_field("maximumVirtualAttendeeCapacity")?;
951 }
952 if !Vec::is_empty(&self.r#offers) {
953 serialize_struct.serialize_field("offers", {
954 struct SerializeWith<'a>(&'a Vec<OffersProperty>);
955 impl<'a> Serialize for SerializeWith<'a> {
956 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
957 where
958 S: Serializer,
959 {
960 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
961 self.0, serializer,
962 )
963 }
964 }
965 &SerializeWith(&self.r#offers)
966 })?;
967 } else {
968 serialize_struct.skip_field("offers")?;
969 }
970 if !Vec::is_empty(&self.r#organizer) {
971 serialize_struct.serialize_field("organizer", {
972 struct SerializeWith<'a>(&'a Vec<OrganizerProperty>);
973 impl<'a> Serialize for SerializeWith<'a> {
974 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
975 where
976 S: Serializer,
977 {
978 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
979 self.0, serializer,
980 )
981 }
982 }
983 &SerializeWith(&self.r#organizer)
984 })?;
985 } else {
986 serialize_struct.skip_field("organizer")?;
987 }
988 if !Vec::is_empty(&self.r#performer) {
989 serialize_struct.serialize_field("performer", {
990 struct SerializeWith<'a>(&'a Vec<PerformerProperty>);
991 impl<'a> Serialize for SerializeWith<'a> {
992 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
993 where
994 S: Serializer,
995 {
996 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
997 self.0, serializer,
998 )
999 }
1000 }
1001 &SerializeWith(&self.r#performer)
1002 })?;
1003 } else {
1004 serialize_struct.skip_field("performer")?;
1005 }
1006 if !Vec::is_empty(&self.r#performers) {
1007 serialize_struct.serialize_field("performers", {
1008 struct SerializeWith<'a>(&'a Vec<PerformersProperty>);
1009 impl<'a> Serialize for SerializeWith<'a> {
1010 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1011 where
1012 S: Serializer,
1013 {
1014 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1015 self.0, serializer,
1016 )
1017 }
1018 }
1019 &SerializeWith(&self.r#performers)
1020 })?;
1021 } else {
1022 serialize_struct.skip_field("performers")?;
1023 }
1024 if !Vec::is_empty(&self.r#previous_start_date) {
1025 serialize_struct.serialize_field("previousStartDate", {
1026 struct SerializeWith<'a>(&'a Vec<PreviousStartDateProperty>);
1027 impl<'a> Serialize for SerializeWith<'a> {
1028 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1029 where
1030 S: Serializer,
1031 {
1032 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1033 self.0, serializer,
1034 )
1035 }
1036 }
1037 &SerializeWith(&self.r#previous_start_date)
1038 })?;
1039 } else {
1040 serialize_struct.skip_field("previousStartDate")?;
1041 }
1042 if !Vec::is_empty(&self.r#recorded_in) {
1043 serialize_struct.serialize_field("recordedIn", {
1044 struct SerializeWith<'a>(&'a Vec<RecordedInProperty>);
1045 impl<'a> Serialize for SerializeWith<'a> {
1046 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1047 where
1048 S: Serializer,
1049 {
1050 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1051 self.0, serializer,
1052 )
1053 }
1054 }
1055 &SerializeWith(&self.r#recorded_in)
1056 })?;
1057 } else {
1058 serialize_struct.skip_field("recordedIn")?;
1059 }
1060 if !Vec::is_empty(&self.r#remaining_attendee_capacity) {
1061 serialize_struct.serialize_field("remainingAttendeeCapacity", {
1062 struct SerializeWith<'a>(&'a Vec<RemainingAttendeeCapacityProperty>);
1063 impl<'a> Serialize for SerializeWith<'a> {
1064 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1065 where
1066 S: Serializer,
1067 {
1068 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1069 self.0, serializer,
1070 )
1071 }
1072 }
1073 &SerializeWith(&self.r#remaining_attendee_capacity)
1074 })?;
1075 } else {
1076 serialize_struct.skip_field("remainingAttendeeCapacity")?;
1077 }
1078 if !Vec::is_empty(&self.r#review) {
1079 serialize_struct.serialize_field("review", {
1080 struct SerializeWith<'a>(&'a Vec<ReviewProperty>);
1081 impl<'a> Serialize for SerializeWith<'a> {
1082 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1083 where
1084 S: Serializer,
1085 {
1086 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1087 self.0, serializer,
1088 )
1089 }
1090 }
1091 &SerializeWith(&self.r#review)
1092 })?;
1093 } else {
1094 serialize_struct.skip_field("review")?;
1095 }
1096 if !Vec::is_empty(&self.r#sponsor) {
1097 serialize_struct.serialize_field("sponsor", {
1098 struct SerializeWith<'a>(&'a Vec<SponsorProperty>);
1099 impl<'a> Serialize for SerializeWith<'a> {
1100 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1101 where
1102 S: Serializer,
1103 {
1104 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1105 self.0, serializer,
1106 )
1107 }
1108 }
1109 &SerializeWith(&self.r#sponsor)
1110 })?;
1111 } else {
1112 serialize_struct.skip_field("sponsor")?;
1113 }
1114 if !Vec::is_empty(&self.r#start_date) {
1115 serialize_struct.serialize_field("startDate", {
1116 struct SerializeWith<'a>(&'a Vec<StartDateProperty>);
1117 impl<'a> Serialize for SerializeWith<'a> {
1118 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1119 where
1120 S: Serializer,
1121 {
1122 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1123 self.0, serializer,
1124 )
1125 }
1126 }
1127 &SerializeWith(&self.r#start_date)
1128 })?;
1129 } else {
1130 serialize_struct.skip_field("startDate")?;
1131 }
1132 if !Vec::is_empty(&self.r#sub_event) {
1133 serialize_struct.serialize_field("subEvent", {
1134 struct SerializeWith<'a>(&'a Vec<SubEventProperty>);
1135 impl<'a> Serialize for SerializeWith<'a> {
1136 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1137 where
1138 S: Serializer,
1139 {
1140 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1141 self.0, serializer,
1142 )
1143 }
1144 }
1145 &SerializeWith(&self.r#sub_event)
1146 })?;
1147 } else {
1148 serialize_struct.skip_field("subEvent")?;
1149 }
1150 if !Vec::is_empty(&self.r#sub_events) {
1151 serialize_struct.serialize_field("subEvents", {
1152 struct SerializeWith<'a>(&'a Vec<SubEventsProperty>);
1153 impl<'a> Serialize for SerializeWith<'a> {
1154 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1155 where
1156 S: Serializer,
1157 {
1158 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1159 self.0, serializer,
1160 )
1161 }
1162 }
1163 &SerializeWith(&self.r#sub_events)
1164 })?;
1165 } else {
1166 serialize_struct.skip_field("subEvents")?;
1167 }
1168 if !Vec::is_empty(&self.r#super_event) {
1169 serialize_struct.serialize_field("superEvent", {
1170 struct SerializeWith<'a>(&'a Vec<SuperEventProperty>);
1171 impl<'a> Serialize for SerializeWith<'a> {
1172 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1173 where
1174 S: Serializer,
1175 {
1176 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1177 self.0, serializer,
1178 )
1179 }
1180 }
1181 &SerializeWith(&self.r#super_event)
1182 })?;
1183 } else {
1184 serialize_struct.skip_field("superEvent")?;
1185 }
1186 if !Vec::is_empty(&self.r#translator) {
1187 serialize_struct.serialize_field("translator", {
1188 struct SerializeWith<'a>(&'a Vec<TranslatorProperty>);
1189 impl<'a> Serialize for SerializeWith<'a> {
1190 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1191 where
1192 S: Serializer,
1193 {
1194 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1195 self.0, serializer,
1196 )
1197 }
1198 }
1199 &SerializeWith(&self.r#translator)
1200 })?;
1201 } else {
1202 serialize_struct.skip_field("translator")?;
1203 }
1204 if !Vec::is_empty(&self.r#typical_age_range) {
1205 serialize_struct.serialize_field("typicalAgeRange", {
1206 struct SerializeWith<'a>(&'a Vec<TypicalAgeRangeProperty>);
1207 impl<'a> Serialize for SerializeWith<'a> {
1208 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1209 where
1210 S: Serializer,
1211 {
1212 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1213 self.0, serializer,
1214 )
1215 }
1216 }
1217 &SerializeWith(&self.r#typical_age_range)
1218 })?;
1219 } else {
1220 serialize_struct.skip_field("typicalAgeRange")?;
1221 }
1222 if !Vec::is_empty(&self.r#work_featured) {
1223 serialize_struct.serialize_field("workFeatured", {
1224 struct SerializeWith<'a>(&'a Vec<WorkFeaturedProperty>);
1225 impl<'a> Serialize for SerializeWith<'a> {
1226 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1227 where
1228 S: Serializer,
1229 {
1230 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1231 self.0, serializer,
1232 )
1233 }
1234 }
1235 &SerializeWith(&self.r#work_featured)
1236 })?;
1237 } else {
1238 serialize_struct.skip_field("workFeatured")?;
1239 }
1240 if !Vec::is_empty(&self.r#work_performed) {
1241 serialize_struct.serialize_field("workPerformed", {
1242 struct SerializeWith<'a>(&'a Vec<WorkPerformedProperty>);
1243 impl<'a> Serialize for SerializeWith<'a> {
1244 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1245 where
1246 S: Serializer,
1247 {
1248 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1249 self.0, serializer,
1250 )
1251 }
1252 }
1253 &SerializeWith(&self.r#work_performed)
1254 })?;
1255 } else {
1256 serialize_struct.skip_field("workPerformed")?;
1257 }
1258 if !Vec::is_empty(&self.r#additional_type) {
1259 serialize_struct.serialize_field("additionalType", {
1260 struct SerializeWith<'a>(&'a Vec<AdditionalTypeProperty>);
1261 impl<'a> Serialize for SerializeWith<'a> {
1262 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1263 where
1264 S: Serializer,
1265 {
1266 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1267 self.0, serializer,
1268 )
1269 }
1270 }
1271 &SerializeWith(&self.r#additional_type)
1272 })?;
1273 } else {
1274 serialize_struct.skip_field("additionalType")?;
1275 }
1276 if !Vec::is_empty(&self.r#alternate_name) {
1277 serialize_struct.serialize_field("alternateName", {
1278 struct SerializeWith<'a>(&'a Vec<AlternateNameProperty>);
1279 impl<'a> Serialize for SerializeWith<'a> {
1280 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1281 where
1282 S: Serializer,
1283 {
1284 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1285 self.0, serializer,
1286 )
1287 }
1288 }
1289 &SerializeWith(&self.r#alternate_name)
1290 })?;
1291 } else {
1292 serialize_struct.skip_field("alternateName")?;
1293 }
1294 if !Vec::is_empty(&self.r#description) {
1295 serialize_struct.serialize_field("description", {
1296 struct SerializeWith<'a>(&'a Vec<DescriptionProperty>);
1297 impl<'a> Serialize for SerializeWith<'a> {
1298 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1299 where
1300 S: Serializer,
1301 {
1302 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1303 self.0, serializer,
1304 )
1305 }
1306 }
1307 &SerializeWith(&self.r#description)
1308 })?;
1309 } else {
1310 serialize_struct.skip_field("description")?;
1311 }
1312 if !Vec::is_empty(&self.r#disambiguating_description) {
1313 serialize_struct.serialize_field("disambiguatingDescription", {
1314 struct SerializeWith<'a>(&'a Vec<DisambiguatingDescriptionProperty>);
1315 impl<'a> Serialize for SerializeWith<'a> {
1316 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1317 where
1318 S: Serializer,
1319 {
1320 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1321 self.0, serializer,
1322 )
1323 }
1324 }
1325 &SerializeWith(&self.r#disambiguating_description)
1326 })?;
1327 } else {
1328 serialize_struct.skip_field("disambiguatingDescription")?;
1329 }
1330 if !Vec::is_empty(&self.r#identifier) {
1331 serialize_struct.serialize_field("identifier", {
1332 struct SerializeWith<'a>(&'a Vec<IdentifierProperty>);
1333 impl<'a> Serialize for SerializeWith<'a> {
1334 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1335 where
1336 S: Serializer,
1337 {
1338 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1339 self.0, serializer,
1340 )
1341 }
1342 }
1343 &SerializeWith(&self.r#identifier)
1344 })?;
1345 } else {
1346 serialize_struct.skip_field("identifier")?;
1347 }
1348 if !Vec::is_empty(&self.r#image) {
1349 serialize_struct.serialize_field("image", {
1350 struct SerializeWith<'a>(&'a Vec<ImageProperty>);
1351 impl<'a> Serialize for SerializeWith<'a> {
1352 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1353 where
1354 S: Serializer,
1355 {
1356 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1357 self.0, serializer,
1358 )
1359 }
1360 }
1361 &SerializeWith(&self.r#image)
1362 })?;
1363 } else {
1364 serialize_struct.skip_field("image")?;
1365 }
1366 if !Vec::is_empty(&self.r#main_entity_of_page) {
1367 serialize_struct.serialize_field("mainEntityOfPage", {
1368 struct SerializeWith<'a>(&'a Vec<MainEntityOfPageProperty>);
1369 impl<'a> Serialize for SerializeWith<'a> {
1370 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1371 where
1372 S: Serializer,
1373 {
1374 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1375 self.0, serializer,
1376 )
1377 }
1378 }
1379 &SerializeWith(&self.r#main_entity_of_page)
1380 })?;
1381 } else {
1382 serialize_struct.skip_field("mainEntityOfPage")?;
1383 }
1384 if !Vec::is_empty(&self.r#name) {
1385 serialize_struct.serialize_field("name", {
1386 struct SerializeWith<'a>(&'a Vec<NameProperty>);
1387 impl<'a> Serialize for SerializeWith<'a> {
1388 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1389 where
1390 S: Serializer,
1391 {
1392 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1393 self.0, serializer,
1394 )
1395 }
1396 }
1397 &SerializeWith(&self.r#name)
1398 })?;
1399 } else {
1400 serialize_struct.skip_field("name")?;
1401 }
1402 if !Vec::is_empty(&self.r#potential_action) {
1403 serialize_struct.serialize_field("potentialAction", {
1404 struct SerializeWith<'a>(&'a Vec<PotentialActionProperty>);
1405 impl<'a> Serialize for SerializeWith<'a> {
1406 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1407 where
1408 S: Serializer,
1409 {
1410 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1411 self.0, serializer,
1412 )
1413 }
1414 }
1415 &SerializeWith(&self.r#potential_action)
1416 })?;
1417 } else {
1418 serialize_struct.skip_field("potentialAction")?;
1419 }
1420 if !Vec::is_empty(&self.r#same_as) {
1421 serialize_struct.serialize_field("sameAs", {
1422 struct SerializeWith<'a>(&'a Vec<SameAsProperty>);
1423 impl<'a> Serialize for SerializeWith<'a> {
1424 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1425 where
1426 S: Serializer,
1427 {
1428 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1429 self.0, serializer,
1430 )
1431 }
1432 }
1433 &SerializeWith(&self.r#same_as)
1434 })?;
1435 } else {
1436 serialize_struct.skip_field("sameAs")?;
1437 }
1438 if !Vec::is_empty(&self.r#subject_of) {
1439 serialize_struct.serialize_field("subjectOf", {
1440 struct SerializeWith<'a>(&'a Vec<SubjectOfProperty>);
1441 impl<'a> Serialize for SerializeWith<'a> {
1442 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1443 where
1444 S: Serializer,
1445 {
1446 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1447 self.0, serializer,
1448 )
1449 }
1450 }
1451 &SerializeWith(&self.r#subject_of)
1452 })?;
1453 } else {
1454 serialize_struct.skip_field("subjectOf")?;
1455 }
1456 if !Vec::is_empty(&self.r#url) {
1457 serialize_struct.serialize_field("url", {
1458 struct SerializeWith<'a>(&'a Vec<UrlProperty>);
1459 impl<'a> Serialize for SerializeWith<'a> {
1460 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
1461 where
1462 S: Serializer,
1463 {
1464 serde_with::As::<serde_with::OneOrMany<serde_with::Same>>::serialize(
1465 self.0, serializer,
1466 )
1467 }
1468 }
1469 &SerializeWith(&self.r#url)
1470 })?;
1471 } else {
1472 serialize_struct.skip_field("url")?;
1473 }
1474 serialize_struct.end()
1475 }
1476 }
1477 impl<'de> Deserialize<'de> for UserBlocks {
1478 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1479 where
1480 D: Deserializer<'de>,
1481 {
1482 enum Field {
1483 About,
1484 Actor,
1485 AggregateRating,
1486 Attendee,
1487 Attendees,
1488 Audience,
1489 Composer,
1490 Contributor,
1491 Director,
1492 DoorTime,
1493 Duration,
1494 EndDate,
1495 EventAttendanceMode,
1496 EventSchedule,
1497 EventStatus,
1498 Funder,
1499 Funding,
1500 InLanguage,
1501 IsAccessibleForFree,
1502 Keywords,
1503 Location,
1504 MaximumAttendeeCapacity,
1505 MaximumPhysicalAttendeeCapacity,
1506 MaximumVirtualAttendeeCapacity,
1507 Offers,
1508 Organizer,
1509 Performer,
1510 Performers,
1511 PreviousStartDate,
1512 RecordedIn,
1513 RemainingAttendeeCapacity,
1514 Review,
1515 Sponsor,
1516 StartDate,
1517 SubEvent,
1518 SubEvents,
1519 SuperEvent,
1520 Translator,
1521 TypicalAgeRange,
1522 WorkFeatured,
1523 WorkPerformed,
1524 AdditionalType,
1525 AlternateName,
1526 Description,
1527 DisambiguatingDescription,
1528 Identifier,
1529 Image,
1530 MainEntityOfPage,
1531 Name,
1532 PotentialAction,
1533 SameAs,
1534 SubjectOf,
1535 Url,
1536 Ignore,
1537 }
1538 struct FieldVisitor;
1539 impl<'de> Visitor<'de> for FieldVisitor {
1540 type Value = Field;
1541 fn expecting(&self, formatter: &mut Formatter) -> fmt::Result {
1542 formatter.write_str("field identifier")
1543 }
1544 fn visit_str<E>(self, value: &str) -> Result<Self::Value, E>
1545 where
1546 E: de::Error,
1547 {
1548 match value {
1549 "about" => Ok(Field::About),
1550 "actor" => Ok(Field::Actor),
1551 "aggregateRating" => Ok(Field::AggregateRating),
1552 "attendee" => Ok(Field::Attendee),
1553 "attendees" => Ok(Field::Attendees),
1554 "audience" => Ok(Field::Audience),
1555 "composer" => Ok(Field::Composer),
1556 "contributor" => Ok(Field::Contributor),
1557 "director" => Ok(Field::Director),
1558 "doorTime" => Ok(Field::DoorTime),
1559 "duration" => Ok(Field::Duration),
1560 "endDate" => Ok(Field::EndDate),
1561 "eventAttendanceMode" => Ok(Field::EventAttendanceMode),
1562 "eventSchedule" => Ok(Field::EventSchedule),
1563 "eventStatus" => Ok(Field::EventStatus),
1564 "funder" => Ok(Field::Funder),
1565 "funding" => Ok(Field::Funding),
1566 "inLanguage" => Ok(Field::InLanguage),
1567 "isAccessibleForFree" => Ok(Field::IsAccessibleForFree),
1568 "keywords" => Ok(Field::Keywords),
1569 "location" => Ok(Field::Location),
1570 "maximumAttendeeCapacity" => Ok(Field::MaximumAttendeeCapacity),
1571 "maximumPhysicalAttendeeCapacity" => {
1572 Ok(Field::MaximumPhysicalAttendeeCapacity)
1573 }
1574 "maximumVirtualAttendeeCapacity" => {
1575 Ok(Field::MaximumVirtualAttendeeCapacity)
1576 }
1577 "offers" => Ok(Field::Offers),
1578 "organizer" => Ok(Field::Organizer),
1579 "performer" => Ok(Field::Performer),
1580 "performers" => Ok(Field::Performers),
1581 "previousStartDate" => Ok(Field::PreviousStartDate),
1582 "recordedIn" => Ok(Field::RecordedIn),
1583 "remainingAttendeeCapacity" => Ok(Field::RemainingAttendeeCapacity),
1584 "review" => Ok(Field::Review),
1585 "sponsor" => Ok(Field::Sponsor),
1586 "startDate" => Ok(Field::StartDate),
1587 "subEvent" => Ok(Field::SubEvent),
1588 "subEvents" => Ok(Field::SubEvents),
1589 "superEvent" => Ok(Field::SuperEvent),
1590 "translator" => Ok(Field::Translator),
1591 "typicalAgeRange" => Ok(Field::TypicalAgeRange),
1592 "workFeatured" => Ok(Field::WorkFeatured),
1593 "workPerformed" => Ok(Field::WorkPerformed),
1594 "additionalType" => Ok(Field::AdditionalType),
1595 "alternateName" => Ok(Field::AlternateName),
1596 "description" => Ok(Field::Description),
1597 "disambiguatingDescription" => Ok(Field::DisambiguatingDescription),
1598 "identifier" => Ok(Field::Identifier),
1599 "image" => Ok(Field::Image),
1600 "mainEntityOfPage" => Ok(Field::MainEntityOfPage),
1601 "name" => Ok(Field::Name),
1602 "potentialAction" => Ok(Field::PotentialAction),
1603 "sameAs" => Ok(Field::SameAs),
1604 "subjectOf" => Ok(Field::SubjectOf),
1605 "url" => Ok(Field::Url),
1606 "id" | "type" => Ok(Field::Ignore),
1607 _ => Err(de::Error::unknown_field(value, FIELDS)),
1608 }
1609 }
1610 fn visit_bytes<E>(self, value: &[u8]) -> Result<Self::Value, E>
1611 where
1612 E: de::Error,
1613 {
1614 match value {
1615 b"about" => Ok(Field::About),
1616 b"actor" => Ok(Field::Actor),
1617 b"aggregateRating" => Ok(Field::AggregateRating),
1618 b"attendee" => Ok(Field::Attendee),
1619 b"attendees" => Ok(Field::Attendees),
1620 b"audience" => Ok(Field::Audience),
1621 b"composer" => Ok(Field::Composer),
1622 b"contributor" => Ok(Field::Contributor),
1623 b"director" => Ok(Field::Director),
1624 b"doorTime" => Ok(Field::DoorTime),
1625 b"duration" => Ok(Field::Duration),
1626 b"endDate" => Ok(Field::EndDate),
1627 b"eventAttendanceMode" => Ok(Field::EventAttendanceMode),
1628 b"eventSchedule" => Ok(Field::EventSchedule),
1629 b"eventStatus" => Ok(Field::EventStatus),
1630 b"funder" => Ok(Field::Funder),
1631 b"funding" => Ok(Field::Funding),
1632 b"inLanguage" => Ok(Field::InLanguage),
1633 b"isAccessibleForFree" => Ok(Field::IsAccessibleForFree),
1634 b"keywords" => Ok(Field::Keywords),
1635 b"location" => Ok(Field::Location),
1636 b"maximumAttendeeCapacity" => Ok(Field::MaximumAttendeeCapacity),
1637 b"maximumPhysicalAttendeeCapacity" => {
1638 Ok(Field::MaximumPhysicalAttendeeCapacity)
1639 }
1640 b"maximumVirtualAttendeeCapacity" => {
1641 Ok(Field::MaximumVirtualAttendeeCapacity)
1642 }
1643 b"offers" => Ok(Field::Offers),
1644 b"organizer" => Ok(Field::Organizer),
1645 b"performer" => Ok(Field::Performer),
1646 b"performers" => Ok(Field::Performers),
1647 b"previousStartDate" => Ok(Field::PreviousStartDate),
1648 b"recordedIn" => Ok(Field::RecordedIn),
1649 b"remainingAttendeeCapacity" => Ok(Field::RemainingAttendeeCapacity),
1650 b"review" => Ok(Field::Review),
1651 b"sponsor" => Ok(Field::Sponsor),
1652 b"startDate" => Ok(Field::StartDate),
1653 b"subEvent" => Ok(Field::SubEvent),
1654 b"subEvents" => Ok(Field::SubEvents),
1655 b"superEvent" => Ok(Field::SuperEvent),
1656 b"translator" => Ok(Field::Translator),
1657 b"typicalAgeRange" => Ok(Field::TypicalAgeRange),
1658 b"workFeatured" => Ok(Field::WorkFeatured),
1659 b"workPerformed" => Ok(Field::WorkPerformed),
1660 b"additionalType" => Ok(Field::AdditionalType),
1661 b"alternateName" => Ok(Field::AlternateName),
1662 b"description" => Ok(Field::Description),
1663 b"disambiguatingDescription" => Ok(Field::DisambiguatingDescription),
1664 b"identifier" => Ok(Field::Identifier),
1665 b"image" => Ok(Field::Image),
1666 b"mainEntityOfPage" => Ok(Field::MainEntityOfPage),
1667 b"name" => Ok(Field::Name),
1668 b"potentialAction" => Ok(Field::PotentialAction),
1669 b"sameAs" => Ok(Field::SameAs),
1670 b"subjectOf" => Ok(Field::SubjectOf),
1671 b"url" => Ok(Field::Url),
1672 b"id" | b"type" => Ok(Field::Ignore),
1673 _ => {
1674 let value = &String::from_utf8_lossy(value);
1675 Err(de::Error::unknown_field(value, FIELDS))
1676 }
1677 }
1678 }
1679 }
1680 impl<'de> Deserialize<'de> for Field {
1681 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1682 where
1683 D: Deserializer<'de>,
1684 {
1685 deserializer.deserialize_identifier(FieldVisitor)
1686 }
1687 }
1688 struct ClassVisitor;
1689 impl<'de> Visitor<'de> for ClassVisitor {
1690 type Value = UserBlocks;
1691 fn expecting(&self, formatter: &mut Formatter) -> fmt::Result {
1692 formatter.write_str("schema.org schema UserBlocks")
1693 }
1694 fn visit_map<A>(self, mut map: A) -> Result<Self::Value, A::Error>
1695 where
1696 A: de::MapAccess<'de>,
1697 {
1698 let mut r#about_property = None;
1699 let mut r#actor_property = None;
1700 let mut r#aggregate_rating_property = None;
1701 let mut r#attendee_property = None;
1702 let mut r#attendees_property = None;
1703 let mut r#audience_property = None;
1704 let mut r#composer_property = None;
1705 let mut r#contributor_property = None;
1706 let mut r#director_property = None;
1707 let mut r#door_time_property = None;
1708 let mut r#duration_property = None;
1709 let mut r#end_date_property = None;
1710 let mut r#event_attendance_mode_property = None;
1711 let mut r#event_schedule_property = None;
1712 let mut r#event_status_property = None;
1713 let mut r#funder_property = None;
1714 let mut r#funding_property = None;
1715 let mut r#in_language_property = None;
1716 let mut r#is_accessible_for_free_property = None;
1717 let mut r#keywords_property = None;
1718 let mut r#location_property = None;
1719 let mut r#maximum_attendee_capacity_property = None;
1720 let mut r#maximum_physical_attendee_capacity_property = None;
1721 let mut r#maximum_virtual_attendee_capacity_property = None;
1722 let mut r#offers_property = None;
1723 let mut r#organizer_property = None;
1724 let mut r#performer_property = None;
1725 let mut r#performers_property = None;
1726 let mut r#previous_start_date_property = None;
1727 let mut r#recorded_in_property = None;
1728 let mut r#remaining_attendee_capacity_property = None;
1729 let mut r#review_property = None;
1730 let mut r#sponsor_property = None;
1731 let mut r#start_date_property = None;
1732 let mut r#sub_event_property = None;
1733 let mut r#sub_events_property = None;
1734 let mut r#super_event_property = None;
1735 let mut r#translator_property = None;
1736 let mut r#typical_age_range_property = None;
1737 let mut r#work_featured_property = None;
1738 let mut r#work_performed_property = None;
1739 let mut r#additional_type_property = None;
1740 let mut r#alternate_name_property = None;
1741 let mut r#description_property = None;
1742 let mut r#disambiguating_description_property = None;
1743 let mut r#identifier_property = None;
1744 let mut r#image_property = None;
1745 let mut r#main_entity_of_page_property = None;
1746 let mut r#name_property = None;
1747 let mut r#potential_action_property = None;
1748 let mut r#same_as_property = None;
1749 let mut r#subject_of_property = None;
1750 let mut r#url_property = None;
1751 while let Some(key) = map.next_key::<Field>()? {
1752 match key {
1753 Field::About => {
1754 if r#about_property.is_some() {
1755 return Err(<A::Error as de::Error>::duplicate_field("about"));
1756 }
1757 r#about_property = Some({
1758 struct DeserializeWith(Vec<AboutProperty>);
1759 impl<'de> Deserialize<'de> for DeserializeWith {
1760 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1761 where
1762 D: Deserializer<'de>,
1763 {
1764 Ok(DeserializeWith(serde_with::As::<
1765 serde_with::OneOrMany<serde_with::Same>,
1766 >::deserialize(deserializer)?))
1767 }
1768 }
1769 match map.next_value::<DeserializeWith>() {
1770 Ok(deserialize_with) => deserialize_with.0,
1771 Err(err) => {
1772 return Err(err);
1773 }
1774 }
1775 });
1776 }
1777 Field::Actor => {
1778 if r#actor_property.is_some() {
1779 return Err(<A::Error as de::Error>::duplicate_field("actor"));
1780 }
1781 r#actor_property = Some({
1782 struct DeserializeWith(Vec<ActorProperty>);
1783 impl<'de> Deserialize<'de> for DeserializeWith {
1784 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1785 where
1786 D: Deserializer<'de>,
1787 {
1788 Ok(DeserializeWith(serde_with::As::<
1789 serde_with::OneOrMany<serde_with::Same>,
1790 >::deserialize(deserializer)?))
1791 }
1792 }
1793 match map.next_value::<DeserializeWith>() {
1794 Ok(deserialize_with) => deserialize_with.0,
1795 Err(err) => {
1796 return Err(err);
1797 }
1798 }
1799 });
1800 }
1801 Field::AggregateRating => {
1802 if r#aggregate_rating_property.is_some() {
1803 return Err(<A::Error as de::Error>::duplicate_field(
1804 "aggregateRating",
1805 ));
1806 }
1807 r#aggregate_rating_property = Some({
1808 struct DeserializeWith(Vec<AggregateRatingProperty>);
1809 impl<'de> Deserialize<'de> for DeserializeWith {
1810 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1811 where
1812 D: Deserializer<'de>,
1813 {
1814 Ok(DeserializeWith(serde_with::As::<
1815 serde_with::OneOrMany<serde_with::Same>,
1816 >::deserialize(deserializer)?))
1817 }
1818 }
1819 match map.next_value::<DeserializeWith>() {
1820 Ok(deserialize_with) => deserialize_with.0,
1821 Err(err) => {
1822 return Err(err);
1823 }
1824 }
1825 });
1826 }
1827 Field::Attendee => {
1828 if r#attendee_property.is_some() {
1829 return Err(<A::Error as de::Error>::duplicate_field(
1830 "attendee",
1831 ));
1832 }
1833 r#attendee_property = Some({
1834 struct DeserializeWith(Vec<AttendeeProperty>);
1835 impl<'de> Deserialize<'de> for DeserializeWith {
1836 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1837 where
1838 D: Deserializer<'de>,
1839 {
1840 Ok(DeserializeWith(serde_with::As::<
1841 serde_with::OneOrMany<serde_with::Same>,
1842 >::deserialize(deserializer)?))
1843 }
1844 }
1845 match map.next_value::<DeserializeWith>() {
1846 Ok(deserialize_with) => deserialize_with.0,
1847 Err(err) => {
1848 return Err(err);
1849 }
1850 }
1851 });
1852 }
1853 Field::Attendees => {
1854 if r#attendees_property.is_some() {
1855 return Err(<A::Error as de::Error>::duplicate_field(
1856 "attendees",
1857 ));
1858 }
1859 r#attendees_property = Some({
1860 struct DeserializeWith(Vec<AttendeesProperty>);
1861 impl<'de> Deserialize<'de> for DeserializeWith {
1862 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1863 where
1864 D: Deserializer<'de>,
1865 {
1866 Ok(DeserializeWith(serde_with::As::<
1867 serde_with::OneOrMany<serde_with::Same>,
1868 >::deserialize(deserializer)?))
1869 }
1870 }
1871 match map.next_value::<DeserializeWith>() {
1872 Ok(deserialize_with) => deserialize_with.0,
1873 Err(err) => {
1874 return Err(err);
1875 }
1876 }
1877 });
1878 }
1879 Field::Audience => {
1880 if r#audience_property.is_some() {
1881 return Err(<A::Error as de::Error>::duplicate_field(
1882 "audience",
1883 ));
1884 }
1885 r#audience_property = Some({
1886 struct DeserializeWith(Vec<AudienceProperty>);
1887 impl<'de> Deserialize<'de> for DeserializeWith {
1888 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1889 where
1890 D: Deserializer<'de>,
1891 {
1892 Ok(DeserializeWith(serde_with::As::<
1893 serde_with::OneOrMany<serde_with::Same>,
1894 >::deserialize(deserializer)?))
1895 }
1896 }
1897 match map.next_value::<DeserializeWith>() {
1898 Ok(deserialize_with) => deserialize_with.0,
1899 Err(err) => {
1900 return Err(err);
1901 }
1902 }
1903 });
1904 }
1905 Field::Composer => {
1906 if r#composer_property.is_some() {
1907 return Err(<A::Error as de::Error>::duplicate_field(
1908 "composer",
1909 ));
1910 }
1911 r#composer_property = Some({
1912 struct DeserializeWith(Vec<ComposerProperty>);
1913 impl<'de> Deserialize<'de> for DeserializeWith {
1914 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1915 where
1916 D: Deserializer<'de>,
1917 {
1918 Ok(DeserializeWith(serde_with::As::<
1919 serde_with::OneOrMany<serde_with::Same>,
1920 >::deserialize(deserializer)?))
1921 }
1922 }
1923 match map.next_value::<DeserializeWith>() {
1924 Ok(deserialize_with) => deserialize_with.0,
1925 Err(err) => {
1926 return Err(err);
1927 }
1928 }
1929 });
1930 }
1931 Field::Contributor => {
1932 if r#contributor_property.is_some() {
1933 return Err(<A::Error as de::Error>::duplicate_field(
1934 "contributor",
1935 ));
1936 }
1937 r#contributor_property = Some({
1938 struct DeserializeWith(Vec<ContributorProperty>);
1939 impl<'de> Deserialize<'de> for DeserializeWith {
1940 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1941 where
1942 D: Deserializer<'de>,
1943 {
1944 Ok(DeserializeWith(serde_with::As::<
1945 serde_with::OneOrMany<serde_with::Same>,
1946 >::deserialize(deserializer)?))
1947 }
1948 }
1949 match map.next_value::<DeserializeWith>() {
1950 Ok(deserialize_with) => deserialize_with.0,
1951 Err(err) => {
1952 return Err(err);
1953 }
1954 }
1955 });
1956 }
1957 Field::Director => {
1958 if r#director_property.is_some() {
1959 return Err(<A::Error as de::Error>::duplicate_field(
1960 "director",
1961 ));
1962 }
1963 r#director_property = Some({
1964 struct DeserializeWith(Vec<DirectorProperty>);
1965 impl<'de> Deserialize<'de> for DeserializeWith {
1966 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1967 where
1968 D: Deserializer<'de>,
1969 {
1970 Ok(DeserializeWith(serde_with::As::<
1971 serde_with::OneOrMany<serde_with::Same>,
1972 >::deserialize(deserializer)?))
1973 }
1974 }
1975 match map.next_value::<DeserializeWith>() {
1976 Ok(deserialize_with) => deserialize_with.0,
1977 Err(err) => {
1978 return Err(err);
1979 }
1980 }
1981 });
1982 }
1983 Field::DoorTime => {
1984 if r#door_time_property.is_some() {
1985 return Err(<A::Error as de::Error>::duplicate_field(
1986 "doorTime",
1987 ));
1988 }
1989 r#door_time_property = Some({
1990 struct DeserializeWith(Vec<DoorTimeProperty>);
1991 impl<'de> Deserialize<'de> for DeserializeWith {
1992 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
1993 where
1994 D: Deserializer<'de>,
1995 {
1996 Ok(DeserializeWith(serde_with::As::<
1997 serde_with::OneOrMany<serde_with::Same>,
1998 >::deserialize(deserializer)?))
1999 }
2000 }
2001 match map.next_value::<DeserializeWith>() {
2002 Ok(deserialize_with) => deserialize_with.0,
2003 Err(err) => {
2004 return Err(err);
2005 }
2006 }
2007 });
2008 }
2009 Field::Duration => {
2010 if r#duration_property.is_some() {
2011 return Err(<A::Error as de::Error>::duplicate_field(
2012 "duration",
2013 ));
2014 }
2015 r#duration_property = Some({
2016 struct DeserializeWith(Vec<DurationProperty>);
2017 impl<'de> Deserialize<'de> for DeserializeWith {
2018 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2019 where
2020 D: Deserializer<'de>,
2021 {
2022 Ok(DeserializeWith(serde_with::As::<
2023 serde_with::OneOrMany<serde_with::Same>,
2024 >::deserialize(deserializer)?))
2025 }
2026 }
2027 match map.next_value::<DeserializeWith>() {
2028 Ok(deserialize_with) => deserialize_with.0,
2029 Err(err) => {
2030 return Err(err);
2031 }
2032 }
2033 });
2034 }
2035 Field::EndDate => {
2036 if r#end_date_property.is_some() {
2037 return Err(<A::Error as de::Error>::duplicate_field(
2038 "endDate",
2039 ));
2040 }
2041 r#end_date_property = Some({
2042 struct DeserializeWith(Vec<EndDateProperty>);
2043 impl<'de> Deserialize<'de> for DeserializeWith {
2044 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2045 where
2046 D: Deserializer<'de>,
2047 {
2048 Ok(DeserializeWith(serde_with::As::<
2049 serde_with::OneOrMany<serde_with::Same>,
2050 >::deserialize(deserializer)?))
2051 }
2052 }
2053 match map.next_value::<DeserializeWith>() {
2054 Ok(deserialize_with) => deserialize_with.0,
2055 Err(err) => {
2056 return Err(err);
2057 }
2058 }
2059 });
2060 }
2061 Field::EventAttendanceMode => {
2062 if r#event_attendance_mode_property.is_some() {
2063 return Err(<A::Error as de::Error>::duplicate_field(
2064 "eventAttendanceMode",
2065 ));
2066 }
2067 r#event_attendance_mode_property = Some({
2068 struct DeserializeWith(Vec<EventAttendanceModeProperty>);
2069 impl<'de> Deserialize<'de> for DeserializeWith {
2070 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2071 where
2072 D: Deserializer<'de>,
2073 {
2074 Ok(DeserializeWith(serde_with::As::<
2075 serde_with::OneOrMany<serde_with::Same>,
2076 >::deserialize(deserializer)?))
2077 }
2078 }
2079 match map.next_value::<DeserializeWith>() {
2080 Ok(deserialize_with) => deserialize_with.0,
2081 Err(err) => {
2082 return Err(err);
2083 }
2084 }
2085 });
2086 }
2087 Field::EventSchedule => {
2088 if r#event_schedule_property.is_some() {
2089 return Err(<A::Error as de::Error>::duplicate_field(
2090 "eventSchedule",
2091 ));
2092 }
2093 r#event_schedule_property = Some({
2094 struct DeserializeWith(Vec<EventScheduleProperty>);
2095 impl<'de> Deserialize<'de> for DeserializeWith {
2096 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2097 where
2098 D: Deserializer<'de>,
2099 {
2100 Ok(DeserializeWith(serde_with::As::<
2101 serde_with::OneOrMany<serde_with::Same>,
2102 >::deserialize(deserializer)?))
2103 }
2104 }
2105 match map.next_value::<DeserializeWith>() {
2106 Ok(deserialize_with) => deserialize_with.0,
2107 Err(err) => {
2108 return Err(err);
2109 }
2110 }
2111 });
2112 }
2113 Field::EventStatus => {
2114 if r#event_status_property.is_some() {
2115 return Err(<A::Error as de::Error>::duplicate_field(
2116 "eventStatus",
2117 ));
2118 }
2119 r#event_status_property = Some({
2120 struct DeserializeWith(Vec<EventStatusProperty>);
2121 impl<'de> Deserialize<'de> for DeserializeWith {
2122 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2123 where
2124 D: Deserializer<'de>,
2125 {
2126 Ok(DeserializeWith(serde_with::As::<
2127 serde_with::OneOrMany<serde_with::Same>,
2128 >::deserialize(deserializer)?))
2129 }
2130 }
2131 match map.next_value::<DeserializeWith>() {
2132 Ok(deserialize_with) => deserialize_with.0,
2133 Err(err) => {
2134 return Err(err);
2135 }
2136 }
2137 });
2138 }
2139 Field::Funder => {
2140 if r#funder_property.is_some() {
2141 return Err(<A::Error as de::Error>::duplicate_field("funder"));
2142 }
2143 r#funder_property = Some({
2144 struct DeserializeWith(Vec<FunderProperty>);
2145 impl<'de> Deserialize<'de> for DeserializeWith {
2146 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2147 where
2148 D: Deserializer<'de>,
2149 {
2150 Ok(DeserializeWith(serde_with::As::<
2151 serde_with::OneOrMany<serde_with::Same>,
2152 >::deserialize(deserializer)?))
2153 }
2154 }
2155 match map.next_value::<DeserializeWith>() {
2156 Ok(deserialize_with) => deserialize_with.0,
2157 Err(err) => {
2158 return Err(err);
2159 }
2160 }
2161 });
2162 }
2163 Field::Funding => {
2164 if r#funding_property.is_some() {
2165 return Err(<A::Error as de::Error>::duplicate_field(
2166 "funding",
2167 ));
2168 }
2169 r#funding_property = Some({
2170 struct DeserializeWith(Vec<FundingProperty>);
2171 impl<'de> Deserialize<'de> for DeserializeWith {
2172 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2173 where
2174 D: Deserializer<'de>,
2175 {
2176 Ok(DeserializeWith(serde_with::As::<
2177 serde_with::OneOrMany<serde_with::Same>,
2178 >::deserialize(deserializer)?))
2179 }
2180 }
2181 match map.next_value::<DeserializeWith>() {
2182 Ok(deserialize_with) => deserialize_with.0,
2183 Err(err) => {
2184 return Err(err);
2185 }
2186 }
2187 });
2188 }
2189 Field::InLanguage => {
2190 if r#in_language_property.is_some() {
2191 return Err(<A::Error as de::Error>::duplicate_field(
2192 "inLanguage",
2193 ));
2194 }
2195 r#in_language_property = Some({
2196 struct DeserializeWith(Vec<InLanguageProperty>);
2197 impl<'de> Deserialize<'de> for DeserializeWith {
2198 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2199 where
2200 D: Deserializer<'de>,
2201 {
2202 Ok(DeserializeWith(serde_with::As::<
2203 serde_with::OneOrMany<serde_with::Same>,
2204 >::deserialize(deserializer)?))
2205 }
2206 }
2207 match map.next_value::<DeserializeWith>() {
2208 Ok(deserialize_with) => deserialize_with.0,
2209 Err(err) => {
2210 return Err(err);
2211 }
2212 }
2213 });
2214 }
2215 Field::IsAccessibleForFree => {
2216 if r#is_accessible_for_free_property.is_some() {
2217 return Err(<A::Error as de::Error>::duplicate_field(
2218 "isAccessibleForFree",
2219 ));
2220 }
2221 r#is_accessible_for_free_property = Some({
2222 struct DeserializeWith(Vec<IsAccessibleForFreeProperty>);
2223 impl<'de> Deserialize<'de> for DeserializeWith {
2224 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2225 where
2226 D: Deserializer<'de>,
2227 {
2228 Ok(DeserializeWith(serde_with::As::<
2229 serde_with::OneOrMany<serde_with::Same>,
2230 >::deserialize(deserializer)?))
2231 }
2232 }
2233 match map.next_value::<DeserializeWith>() {
2234 Ok(deserialize_with) => deserialize_with.0,
2235 Err(err) => {
2236 return Err(err);
2237 }
2238 }
2239 });
2240 }
2241 Field::Keywords => {
2242 if r#keywords_property.is_some() {
2243 return Err(<A::Error as de::Error>::duplicate_field(
2244 "keywords",
2245 ));
2246 }
2247 r#keywords_property = Some({
2248 struct DeserializeWith(Vec<KeywordsProperty>);
2249 impl<'de> Deserialize<'de> for DeserializeWith {
2250 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2251 where
2252 D: Deserializer<'de>,
2253 {
2254 Ok(DeserializeWith(serde_with::As::<
2255 serde_with::OneOrMany<serde_with::Same>,
2256 >::deserialize(deserializer)?))
2257 }
2258 }
2259 match map.next_value::<DeserializeWith>() {
2260 Ok(deserialize_with) => deserialize_with.0,
2261 Err(err) => {
2262 return Err(err);
2263 }
2264 }
2265 });
2266 }
2267 Field::Location => {
2268 if r#location_property.is_some() {
2269 return Err(<A::Error as de::Error>::duplicate_field(
2270 "location",
2271 ));
2272 }
2273 r#location_property = Some({
2274 struct DeserializeWith(Vec<LocationProperty>);
2275 impl<'de> Deserialize<'de> for DeserializeWith {
2276 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2277 where
2278 D: Deserializer<'de>,
2279 {
2280 Ok(DeserializeWith(serde_with::As::<
2281 serde_with::OneOrMany<serde_with::Same>,
2282 >::deserialize(deserializer)?))
2283 }
2284 }
2285 match map.next_value::<DeserializeWith>() {
2286 Ok(deserialize_with) => deserialize_with.0,
2287 Err(err) => {
2288 return Err(err);
2289 }
2290 }
2291 });
2292 }
2293 Field::MaximumAttendeeCapacity => {
2294 if r#maximum_attendee_capacity_property.is_some() {
2295 return Err(<A::Error as de::Error>::duplicate_field(
2296 "maximumAttendeeCapacity",
2297 ));
2298 }
2299 r#maximum_attendee_capacity_property = Some({
2300 struct DeserializeWith(Vec<MaximumAttendeeCapacityProperty>);
2301 impl<'de> Deserialize<'de> for DeserializeWith {
2302 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2303 where
2304 D: Deserializer<'de>,
2305 {
2306 Ok(DeserializeWith(serde_with::As::<
2307 serde_with::OneOrMany<serde_with::Same>,
2308 >::deserialize(deserializer)?))
2309 }
2310 }
2311 match map.next_value::<DeserializeWith>() {
2312 Ok(deserialize_with) => deserialize_with.0,
2313 Err(err) => {
2314 return Err(err);
2315 }
2316 }
2317 });
2318 }
2319 Field::MaximumPhysicalAttendeeCapacity => {
2320 if r#maximum_physical_attendee_capacity_property.is_some() {
2321 return Err(<A::Error as de::Error>::duplicate_field(
2322 "maximumPhysicalAttendeeCapacity",
2323 ));
2324 }
2325 r#maximum_physical_attendee_capacity_property = Some({
2326 struct DeserializeWith(
2327 Vec<MaximumPhysicalAttendeeCapacityProperty>,
2328 );
2329 impl<'de> Deserialize<'de> for DeserializeWith {
2330 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2331 where
2332 D: Deserializer<'de>,
2333 {
2334 Ok(DeserializeWith(serde_with::As::<
2335 serde_with::OneOrMany<serde_with::Same>,
2336 >::deserialize(deserializer)?))
2337 }
2338 }
2339 match map.next_value::<DeserializeWith>() {
2340 Ok(deserialize_with) => deserialize_with.0,
2341 Err(err) => {
2342 return Err(err);
2343 }
2344 }
2345 });
2346 }
2347 Field::MaximumVirtualAttendeeCapacity => {
2348 if r#maximum_virtual_attendee_capacity_property.is_some() {
2349 return Err(<A::Error as de::Error>::duplicate_field(
2350 "maximumVirtualAttendeeCapacity",
2351 ));
2352 }
2353 r#maximum_virtual_attendee_capacity_property = Some({
2354 struct DeserializeWith(
2355 Vec<MaximumVirtualAttendeeCapacityProperty>,
2356 );
2357 impl<'de> Deserialize<'de> for DeserializeWith {
2358 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2359 where
2360 D: Deserializer<'de>,
2361 {
2362 Ok(DeserializeWith(serde_with::As::<
2363 serde_with::OneOrMany<serde_with::Same>,
2364 >::deserialize(deserializer)?))
2365 }
2366 }
2367 match map.next_value::<DeserializeWith>() {
2368 Ok(deserialize_with) => deserialize_with.0,
2369 Err(err) => {
2370 return Err(err);
2371 }
2372 }
2373 });
2374 }
2375 Field::Offers => {
2376 if r#offers_property.is_some() {
2377 return Err(<A::Error as de::Error>::duplicate_field("offers"));
2378 }
2379 r#offers_property = Some({
2380 struct DeserializeWith(Vec<OffersProperty>);
2381 impl<'de> Deserialize<'de> for DeserializeWith {
2382 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2383 where
2384 D: Deserializer<'de>,
2385 {
2386 Ok(DeserializeWith(serde_with::As::<
2387 serde_with::OneOrMany<serde_with::Same>,
2388 >::deserialize(deserializer)?))
2389 }
2390 }
2391 match map.next_value::<DeserializeWith>() {
2392 Ok(deserialize_with) => deserialize_with.0,
2393 Err(err) => {
2394 return Err(err);
2395 }
2396 }
2397 });
2398 }
2399 Field::Organizer => {
2400 if r#organizer_property.is_some() {
2401 return Err(<A::Error as de::Error>::duplicate_field(
2402 "organizer",
2403 ));
2404 }
2405 r#organizer_property = Some({
2406 struct DeserializeWith(Vec<OrganizerProperty>);
2407 impl<'de> Deserialize<'de> for DeserializeWith {
2408 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2409 where
2410 D: Deserializer<'de>,
2411 {
2412 Ok(DeserializeWith(serde_with::As::<
2413 serde_with::OneOrMany<serde_with::Same>,
2414 >::deserialize(deserializer)?))
2415 }
2416 }
2417 match map.next_value::<DeserializeWith>() {
2418 Ok(deserialize_with) => deserialize_with.0,
2419 Err(err) => {
2420 return Err(err);
2421 }
2422 }
2423 });
2424 }
2425 Field::Performer => {
2426 if r#performer_property.is_some() {
2427 return Err(<A::Error as de::Error>::duplicate_field(
2428 "performer",
2429 ));
2430 }
2431 r#performer_property = Some({
2432 struct DeserializeWith(Vec<PerformerProperty>);
2433 impl<'de> Deserialize<'de> for DeserializeWith {
2434 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2435 where
2436 D: Deserializer<'de>,
2437 {
2438 Ok(DeserializeWith(serde_with::As::<
2439 serde_with::OneOrMany<serde_with::Same>,
2440 >::deserialize(deserializer)?))
2441 }
2442 }
2443 match map.next_value::<DeserializeWith>() {
2444 Ok(deserialize_with) => deserialize_with.0,
2445 Err(err) => {
2446 return Err(err);
2447 }
2448 }
2449 });
2450 }
2451 Field::Performers => {
2452 if r#performers_property.is_some() {
2453 return Err(<A::Error as de::Error>::duplicate_field(
2454 "performers",
2455 ));
2456 }
2457 r#performers_property = Some({
2458 struct DeserializeWith(Vec<PerformersProperty>);
2459 impl<'de> Deserialize<'de> for DeserializeWith {
2460 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2461 where
2462 D: Deserializer<'de>,
2463 {
2464 Ok(DeserializeWith(serde_with::As::<
2465 serde_with::OneOrMany<serde_with::Same>,
2466 >::deserialize(deserializer)?))
2467 }
2468 }
2469 match map.next_value::<DeserializeWith>() {
2470 Ok(deserialize_with) => deserialize_with.0,
2471 Err(err) => {
2472 return Err(err);
2473 }
2474 }
2475 });
2476 }
2477 Field::PreviousStartDate => {
2478 if r#previous_start_date_property.is_some() {
2479 return Err(<A::Error as de::Error>::duplicate_field(
2480 "previousStartDate",
2481 ));
2482 }
2483 r#previous_start_date_property = Some({
2484 struct DeserializeWith(Vec<PreviousStartDateProperty>);
2485 impl<'de> Deserialize<'de> for DeserializeWith {
2486 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2487 where
2488 D: Deserializer<'de>,
2489 {
2490 Ok(DeserializeWith(serde_with::As::<
2491 serde_with::OneOrMany<serde_with::Same>,
2492 >::deserialize(deserializer)?))
2493 }
2494 }
2495 match map.next_value::<DeserializeWith>() {
2496 Ok(deserialize_with) => deserialize_with.0,
2497 Err(err) => {
2498 return Err(err);
2499 }
2500 }
2501 });
2502 }
2503 Field::RecordedIn => {
2504 if r#recorded_in_property.is_some() {
2505 return Err(<A::Error as de::Error>::duplicate_field(
2506 "recordedIn",
2507 ));
2508 }
2509 r#recorded_in_property = Some({
2510 struct DeserializeWith(Vec<RecordedInProperty>);
2511 impl<'de> Deserialize<'de> for DeserializeWith {
2512 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2513 where
2514 D: Deserializer<'de>,
2515 {
2516 Ok(DeserializeWith(serde_with::As::<
2517 serde_with::OneOrMany<serde_with::Same>,
2518 >::deserialize(deserializer)?))
2519 }
2520 }
2521 match map.next_value::<DeserializeWith>() {
2522 Ok(deserialize_with) => deserialize_with.0,
2523 Err(err) => {
2524 return Err(err);
2525 }
2526 }
2527 });
2528 }
2529 Field::RemainingAttendeeCapacity => {
2530 if r#remaining_attendee_capacity_property.is_some() {
2531 return Err(<A::Error as de::Error>::duplicate_field(
2532 "remainingAttendeeCapacity",
2533 ));
2534 }
2535 r#remaining_attendee_capacity_property = Some({
2536 struct DeserializeWith(Vec<RemainingAttendeeCapacityProperty>);
2537 impl<'de> Deserialize<'de> for DeserializeWith {
2538 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2539 where
2540 D: Deserializer<'de>,
2541 {
2542 Ok(DeserializeWith(serde_with::As::<
2543 serde_with::OneOrMany<serde_with::Same>,
2544 >::deserialize(deserializer)?))
2545 }
2546 }
2547 match map.next_value::<DeserializeWith>() {
2548 Ok(deserialize_with) => deserialize_with.0,
2549 Err(err) => {
2550 return Err(err);
2551 }
2552 }
2553 });
2554 }
2555 Field::Review => {
2556 if r#review_property.is_some() {
2557 return Err(<A::Error as de::Error>::duplicate_field("review"));
2558 }
2559 r#review_property = Some({
2560 struct DeserializeWith(Vec<ReviewProperty>);
2561 impl<'de> Deserialize<'de> for DeserializeWith {
2562 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2563 where
2564 D: Deserializer<'de>,
2565 {
2566 Ok(DeserializeWith(serde_with::As::<
2567 serde_with::OneOrMany<serde_with::Same>,
2568 >::deserialize(deserializer)?))
2569 }
2570 }
2571 match map.next_value::<DeserializeWith>() {
2572 Ok(deserialize_with) => deserialize_with.0,
2573 Err(err) => {
2574 return Err(err);
2575 }
2576 }
2577 });
2578 }
2579 Field::Sponsor => {
2580 if r#sponsor_property.is_some() {
2581 return Err(<A::Error as de::Error>::duplicate_field(
2582 "sponsor",
2583 ));
2584 }
2585 r#sponsor_property = Some({
2586 struct DeserializeWith(Vec<SponsorProperty>);
2587 impl<'de> Deserialize<'de> for DeserializeWith {
2588 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2589 where
2590 D: Deserializer<'de>,
2591 {
2592 Ok(DeserializeWith(serde_with::As::<
2593 serde_with::OneOrMany<serde_with::Same>,
2594 >::deserialize(deserializer)?))
2595 }
2596 }
2597 match map.next_value::<DeserializeWith>() {
2598 Ok(deserialize_with) => deserialize_with.0,
2599 Err(err) => {
2600 return Err(err);
2601 }
2602 }
2603 });
2604 }
2605 Field::StartDate => {
2606 if r#start_date_property.is_some() {
2607 return Err(<A::Error as de::Error>::duplicate_field(
2608 "startDate",
2609 ));
2610 }
2611 r#start_date_property = Some({
2612 struct DeserializeWith(Vec<StartDateProperty>);
2613 impl<'de> Deserialize<'de> for DeserializeWith {
2614 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2615 where
2616 D: Deserializer<'de>,
2617 {
2618 Ok(DeserializeWith(serde_with::As::<
2619 serde_with::OneOrMany<serde_with::Same>,
2620 >::deserialize(deserializer)?))
2621 }
2622 }
2623 match map.next_value::<DeserializeWith>() {
2624 Ok(deserialize_with) => deserialize_with.0,
2625 Err(err) => {
2626 return Err(err);
2627 }
2628 }
2629 });
2630 }
2631 Field::SubEvent => {
2632 if r#sub_event_property.is_some() {
2633 return Err(<A::Error as de::Error>::duplicate_field(
2634 "subEvent",
2635 ));
2636 }
2637 r#sub_event_property = Some({
2638 struct DeserializeWith(Vec<SubEventProperty>);
2639 impl<'de> Deserialize<'de> for DeserializeWith {
2640 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2641 where
2642 D: Deserializer<'de>,
2643 {
2644 Ok(DeserializeWith(serde_with::As::<
2645 serde_with::OneOrMany<serde_with::Same>,
2646 >::deserialize(deserializer)?))
2647 }
2648 }
2649 match map.next_value::<DeserializeWith>() {
2650 Ok(deserialize_with) => deserialize_with.0,
2651 Err(err) => {
2652 return Err(err);
2653 }
2654 }
2655 });
2656 }
2657 Field::SubEvents => {
2658 if r#sub_events_property.is_some() {
2659 return Err(<A::Error as de::Error>::duplicate_field(
2660 "subEvents",
2661 ));
2662 }
2663 r#sub_events_property = Some({
2664 struct DeserializeWith(Vec<SubEventsProperty>);
2665 impl<'de> Deserialize<'de> for DeserializeWith {
2666 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2667 where
2668 D: Deserializer<'de>,
2669 {
2670 Ok(DeserializeWith(serde_with::As::<
2671 serde_with::OneOrMany<serde_with::Same>,
2672 >::deserialize(deserializer)?))
2673 }
2674 }
2675 match map.next_value::<DeserializeWith>() {
2676 Ok(deserialize_with) => deserialize_with.0,
2677 Err(err) => {
2678 return Err(err);
2679 }
2680 }
2681 });
2682 }
2683 Field::SuperEvent => {
2684 if r#super_event_property.is_some() {
2685 return Err(<A::Error as de::Error>::duplicate_field(
2686 "superEvent",
2687 ));
2688 }
2689 r#super_event_property = Some({
2690 struct DeserializeWith(Vec<SuperEventProperty>);
2691 impl<'de> Deserialize<'de> for DeserializeWith {
2692 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2693 where
2694 D: Deserializer<'de>,
2695 {
2696 Ok(DeserializeWith(serde_with::As::<
2697 serde_with::OneOrMany<serde_with::Same>,
2698 >::deserialize(deserializer)?))
2699 }
2700 }
2701 match map.next_value::<DeserializeWith>() {
2702 Ok(deserialize_with) => deserialize_with.0,
2703 Err(err) => {
2704 return Err(err);
2705 }
2706 }
2707 });
2708 }
2709 Field::Translator => {
2710 if r#translator_property.is_some() {
2711 return Err(<A::Error as de::Error>::duplicate_field(
2712 "translator",
2713 ));
2714 }
2715 r#translator_property = Some({
2716 struct DeserializeWith(Vec<TranslatorProperty>);
2717 impl<'de> Deserialize<'de> for DeserializeWith {
2718 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2719 where
2720 D: Deserializer<'de>,
2721 {
2722 Ok(DeserializeWith(serde_with::As::<
2723 serde_with::OneOrMany<serde_with::Same>,
2724 >::deserialize(deserializer)?))
2725 }
2726 }
2727 match map.next_value::<DeserializeWith>() {
2728 Ok(deserialize_with) => deserialize_with.0,
2729 Err(err) => {
2730 return Err(err);
2731 }
2732 }
2733 });
2734 }
2735 Field::TypicalAgeRange => {
2736 if r#typical_age_range_property.is_some() {
2737 return Err(<A::Error as de::Error>::duplicate_field(
2738 "typicalAgeRange",
2739 ));
2740 }
2741 r#typical_age_range_property = Some({
2742 struct DeserializeWith(Vec<TypicalAgeRangeProperty>);
2743 impl<'de> Deserialize<'de> for DeserializeWith {
2744 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2745 where
2746 D: Deserializer<'de>,
2747 {
2748 Ok(DeserializeWith(serde_with::As::<
2749 serde_with::OneOrMany<serde_with::Same>,
2750 >::deserialize(deserializer)?))
2751 }
2752 }
2753 match map.next_value::<DeserializeWith>() {
2754 Ok(deserialize_with) => deserialize_with.0,
2755 Err(err) => {
2756 return Err(err);
2757 }
2758 }
2759 });
2760 }
2761 Field::WorkFeatured => {
2762 if r#work_featured_property.is_some() {
2763 return Err(<A::Error as de::Error>::duplicate_field(
2764 "workFeatured",
2765 ));
2766 }
2767 r#work_featured_property = Some({
2768 struct DeserializeWith(Vec<WorkFeaturedProperty>);
2769 impl<'de> Deserialize<'de> for DeserializeWith {
2770 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2771 where
2772 D: Deserializer<'de>,
2773 {
2774 Ok(DeserializeWith(serde_with::As::<
2775 serde_with::OneOrMany<serde_with::Same>,
2776 >::deserialize(deserializer)?))
2777 }
2778 }
2779 match map.next_value::<DeserializeWith>() {
2780 Ok(deserialize_with) => deserialize_with.0,
2781 Err(err) => {
2782 return Err(err);
2783 }
2784 }
2785 });
2786 }
2787 Field::WorkPerformed => {
2788 if r#work_performed_property.is_some() {
2789 return Err(<A::Error as de::Error>::duplicate_field(
2790 "workPerformed",
2791 ));
2792 }
2793 r#work_performed_property = Some({
2794 struct DeserializeWith(Vec<WorkPerformedProperty>);
2795 impl<'de> Deserialize<'de> for DeserializeWith {
2796 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2797 where
2798 D: Deserializer<'de>,
2799 {
2800 Ok(DeserializeWith(serde_with::As::<
2801 serde_with::OneOrMany<serde_with::Same>,
2802 >::deserialize(deserializer)?))
2803 }
2804 }
2805 match map.next_value::<DeserializeWith>() {
2806 Ok(deserialize_with) => deserialize_with.0,
2807 Err(err) => {
2808 return Err(err);
2809 }
2810 }
2811 });
2812 }
2813 Field::AdditionalType => {
2814 if r#additional_type_property.is_some() {
2815 return Err(<A::Error as de::Error>::duplicate_field(
2816 "additionalType",
2817 ));
2818 }
2819 r#additional_type_property = Some({
2820 struct DeserializeWith(Vec<AdditionalTypeProperty>);
2821 impl<'de> Deserialize<'de> for DeserializeWith {
2822 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2823 where
2824 D: Deserializer<'de>,
2825 {
2826 Ok(DeserializeWith(serde_with::As::<
2827 serde_with::OneOrMany<serde_with::Same>,
2828 >::deserialize(deserializer)?))
2829 }
2830 }
2831 match map.next_value::<DeserializeWith>() {
2832 Ok(deserialize_with) => deserialize_with.0,
2833 Err(err) => {
2834 return Err(err);
2835 }
2836 }
2837 });
2838 }
2839 Field::AlternateName => {
2840 if r#alternate_name_property.is_some() {
2841 return Err(<A::Error as de::Error>::duplicate_field(
2842 "alternateName",
2843 ));
2844 }
2845 r#alternate_name_property = Some({
2846 struct DeserializeWith(Vec<AlternateNameProperty>);
2847 impl<'de> Deserialize<'de> for DeserializeWith {
2848 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2849 where
2850 D: Deserializer<'de>,
2851 {
2852 Ok(DeserializeWith(serde_with::As::<
2853 serde_with::OneOrMany<serde_with::Same>,
2854 >::deserialize(deserializer)?))
2855 }
2856 }
2857 match map.next_value::<DeserializeWith>() {
2858 Ok(deserialize_with) => deserialize_with.0,
2859 Err(err) => {
2860 return Err(err);
2861 }
2862 }
2863 });
2864 }
2865 Field::Description => {
2866 if r#description_property.is_some() {
2867 return Err(<A::Error as de::Error>::duplicate_field(
2868 "description",
2869 ));
2870 }
2871 r#description_property = Some({
2872 struct DeserializeWith(Vec<DescriptionProperty>);
2873 impl<'de> Deserialize<'de> for DeserializeWith {
2874 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2875 where
2876 D: Deserializer<'de>,
2877 {
2878 Ok(DeserializeWith(serde_with::As::<
2879 serde_with::OneOrMany<serde_with::Same>,
2880 >::deserialize(deserializer)?))
2881 }
2882 }
2883 match map.next_value::<DeserializeWith>() {
2884 Ok(deserialize_with) => deserialize_with.0,
2885 Err(err) => {
2886 return Err(err);
2887 }
2888 }
2889 });
2890 }
2891 Field::DisambiguatingDescription => {
2892 if r#disambiguating_description_property.is_some() {
2893 return Err(<A::Error as de::Error>::duplicate_field(
2894 "disambiguatingDescription",
2895 ));
2896 }
2897 r#disambiguating_description_property = Some({
2898 struct DeserializeWith(Vec<DisambiguatingDescriptionProperty>);
2899 impl<'de> Deserialize<'de> for DeserializeWith {
2900 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2901 where
2902 D: Deserializer<'de>,
2903 {
2904 Ok(DeserializeWith(serde_with::As::<
2905 serde_with::OneOrMany<serde_with::Same>,
2906 >::deserialize(deserializer)?))
2907 }
2908 }
2909 match map.next_value::<DeserializeWith>() {
2910 Ok(deserialize_with) => deserialize_with.0,
2911 Err(err) => {
2912 return Err(err);
2913 }
2914 }
2915 });
2916 }
2917 Field::Identifier => {
2918 if r#identifier_property.is_some() {
2919 return Err(<A::Error as de::Error>::duplicate_field(
2920 "identifier",
2921 ));
2922 }
2923 r#identifier_property = Some({
2924 struct DeserializeWith(Vec<IdentifierProperty>);
2925 impl<'de> Deserialize<'de> for DeserializeWith {
2926 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2927 where
2928 D: Deserializer<'de>,
2929 {
2930 Ok(DeserializeWith(serde_with::As::<
2931 serde_with::OneOrMany<serde_with::Same>,
2932 >::deserialize(deserializer)?))
2933 }
2934 }
2935 match map.next_value::<DeserializeWith>() {
2936 Ok(deserialize_with) => deserialize_with.0,
2937 Err(err) => {
2938 return Err(err);
2939 }
2940 }
2941 });
2942 }
2943 Field::Image => {
2944 if r#image_property.is_some() {
2945 return Err(<A::Error as de::Error>::duplicate_field("image"));
2946 }
2947 r#image_property = Some({
2948 struct DeserializeWith(Vec<ImageProperty>);
2949 impl<'de> Deserialize<'de> for DeserializeWith {
2950 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2951 where
2952 D: Deserializer<'de>,
2953 {
2954 Ok(DeserializeWith(serde_with::As::<
2955 serde_with::OneOrMany<serde_with::Same>,
2956 >::deserialize(deserializer)?))
2957 }
2958 }
2959 match map.next_value::<DeserializeWith>() {
2960 Ok(deserialize_with) => deserialize_with.0,
2961 Err(err) => {
2962 return Err(err);
2963 }
2964 }
2965 });
2966 }
2967 Field::MainEntityOfPage => {
2968 if r#main_entity_of_page_property.is_some() {
2969 return Err(<A::Error as de::Error>::duplicate_field(
2970 "mainEntityOfPage",
2971 ));
2972 }
2973 r#main_entity_of_page_property = Some({
2974 struct DeserializeWith(Vec<MainEntityOfPageProperty>);
2975 impl<'de> Deserialize<'de> for DeserializeWith {
2976 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
2977 where
2978 D: Deserializer<'de>,
2979 {
2980 Ok(DeserializeWith(serde_with::As::<
2981 serde_with::OneOrMany<serde_with::Same>,
2982 >::deserialize(deserializer)?))
2983 }
2984 }
2985 match map.next_value::<DeserializeWith>() {
2986 Ok(deserialize_with) => deserialize_with.0,
2987 Err(err) => {
2988 return Err(err);
2989 }
2990 }
2991 });
2992 }
2993 Field::Name => {
2994 if r#name_property.is_some() {
2995 return Err(<A::Error as de::Error>::duplicate_field("name"));
2996 }
2997 r#name_property = Some({
2998 struct DeserializeWith(Vec<NameProperty>);
2999 impl<'de> Deserialize<'de> for DeserializeWith {
3000 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
3001 where
3002 D: Deserializer<'de>,
3003 {
3004 Ok(DeserializeWith(serde_with::As::<
3005 serde_with::OneOrMany<serde_with::Same>,
3006 >::deserialize(deserializer)?))
3007 }
3008 }
3009 match map.next_value::<DeserializeWith>() {
3010 Ok(deserialize_with) => deserialize_with.0,
3011 Err(err) => {
3012 return Err(err);
3013 }
3014 }
3015 });
3016 }
3017 Field::PotentialAction => {
3018 if r#potential_action_property.is_some() {
3019 return Err(<A::Error as de::Error>::duplicate_field(
3020 "potentialAction",
3021 ));
3022 }
3023 r#potential_action_property = Some({
3024 struct DeserializeWith(Vec<PotentialActionProperty>);
3025 impl<'de> Deserialize<'de> for DeserializeWith {
3026 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
3027 where
3028 D: Deserializer<'de>,
3029 {
3030 Ok(DeserializeWith(serde_with::As::<
3031 serde_with::OneOrMany<serde_with::Same>,
3032 >::deserialize(deserializer)?))
3033 }
3034 }
3035 match map.next_value::<DeserializeWith>() {
3036 Ok(deserialize_with) => deserialize_with.0,
3037 Err(err) => {
3038 return Err(err);
3039 }
3040 }
3041 });
3042 }
3043 Field::SameAs => {
3044 if r#same_as_property.is_some() {
3045 return Err(<A::Error as de::Error>::duplicate_field("sameAs"));
3046 }
3047 r#same_as_property = Some({
3048 struct DeserializeWith(Vec<SameAsProperty>);
3049 impl<'de> Deserialize<'de> for DeserializeWith {
3050 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
3051 where
3052 D: Deserializer<'de>,
3053 {
3054 Ok(DeserializeWith(serde_with::As::<
3055 serde_with::OneOrMany<serde_with::Same>,
3056 >::deserialize(deserializer)?))
3057 }
3058 }
3059 match map.next_value::<DeserializeWith>() {
3060 Ok(deserialize_with) => deserialize_with.0,
3061 Err(err) => {
3062 return Err(err);
3063 }
3064 }
3065 });
3066 }
3067 Field::SubjectOf => {
3068 if r#subject_of_property.is_some() {
3069 return Err(<A::Error as de::Error>::duplicate_field(
3070 "subjectOf",
3071 ));
3072 }
3073 r#subject_of_property = Some({
3074 struct DeserializeWith(Vec<SubjectOfProperty>);
3075 impl<'de> Deserialize<'de> for DeserializeWith {
3076 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
3077 where
3078 D: Deserializer<'de>,
3079 {
3080 Ok(DeserializeWith(serde_with::As::<
3081 serde_with::OneOrMany<serde_with::Same>,
3082 >::deserialize(deserializer)?))
3083 }
3084 }
3085 match map.next_value::<DeserializeWith>() {
3086 Ok(deserialize_with) => deserialize_with.0,
3087 Err(err) => {
3088 return Err(err);
3089 }
3090 }
3091 });
3092 }
3093 Field::Url => {
3094 if r#url_property.is_some() {
3095 return Err(<A::Error as de::Error>::duplicate_field("url"));
3096 }
3097 r#url_property = Some({
3098 struct DeserializeWith(Vec<UrlProperty>);
3099 impl<'de> Deserialize<'de> for DeserializeWith {
3100 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
3101 where
3102 D: Deserializer<'de>,
3103 {
3104 Ok(DeserializeWith(serde_with::As::<
3105 serde_with::OneOrMany<serde_with::Same>,
3106 >::deserialize(deserializer)?))
3107 }
3108 }
3109 match map.next_value::<DeserializeWith>() {
3110 Ok(deserialize_with) => deserialize_with.0,
3111 Err(err) => {
3112 return Err(err);
3113 }
3114 }
3115 });
3116 }
3117 Field::Ignore => {
3118 let _ = map.next_value::<de::IgnoredAny>()?;
3119 }
3120 }
3121 }
3122 Ok(UserBlocks {
3123 r#about: r#about_property.unwrap_or_default(),
3124 r#actor: r#actor_property.unwrap_or_default(),
3125 r#aggregate_rating: r#aggregate_rating_property.unwrap_or_default(),
3126 r#attendee: r#attendee_property.unwrap_or_default(),
3127 r#attendees: r#attendees_property.unwrap_or_default(),
3128 r#audience: r#audience_property.unwrap_or_default(),
3129 r#composer: r#composer_property.unwrap_or_default(),
3130 r#contributor: r#contributor_property.unwrap_or_default(),
3131 r#director: r#director_property.unwrap_or_default(),
3132 r#door_time: r#door_time_property.unwrap_or_default(),
3133 r#duration: r#duration_property.unwrap_or_default(),
3134 r#end_date: r#end_date_property.unwrap_or_default(),
3135 r#event_attendance_mode: r#event_attendance_mode_property
3136 .unwrap_or_default(),
3137 r#event_schedule: r#event_schedule_property.unwrap_or_default(),
3138 r#event_status: r#event_status_property.unwrap_or_default(),
3139 r#funder: r#funder_property.unwrap_or_default(),
3140 r#funding: r#funding_property.unwrap_or_default(),
3141 r#in_language: r#in_language_property.unwrap_or_default(),
3142 r#is_accessible_for_free: r#is_accessible_for_free_property
3143 .unwrap_or_default(),
3144 r#keywords: r#keywords_property.unwrap_or_default(),
3145 r#location: r#location_property.unwrap_or_default(),
3146 r#maximum_attendee_capacity: r#maximum_attendee_capacity_property
3147 .unwrap_or_default(),
3148 r#maximum_physical_attendee_capacity:
3149 r#maximum_physical_attendee_capacity_property.unwrap_or_default(),
3150 r#maximum_virtual_attendee_capacity:
3151 r#maximum_virtual_attendee_capacity_property.unwrap_or_default(),
3152 r#offers: r#offers_property.unwrap_or_default(),
3153 r#organizer: r#organizer_property.unwrap_or_default(),
3154 r#performer: r#performer_property.unwrap_or_default(),
3155 r#performers: r#performers_property.unwrap_or_default(),
3156 r#previous_start_date: r#previous_start_date_property.unwrap_or_default(),
3157 r#recorded_in: r#recorded_in_property.unwrap_or_default(),
3158 r#remaining_attendee_capacity: r#remaining_attendee_capacity_property
3159 .unwrap_or_default(),
3160 r#review: r#review_property.unwrap_or_default(),
3161 r#sponsor: r#sponsor_property.unwrap_or_default(),
3162 r#start_date: r#start_date_property.unwrap_or_default(),
3163 r#sub_event: r#sub_event_property.unwrap_or_default(),
3164 r#sub_events: r#sub_events_property.unwrap_or_default(),
3165 r#super_event: r#super_event_property.unwrap_or_default(),
3166 r#translator: r#translator_property.unwrap_or_default(),
3167 r#typical_age_range: r#typical_age_range_property.unwrap_or_default(),
3168 r#work_featured: r#work_featured_property.unwrap_or_default(),
3169 r#work_performed: r#work_performed_property.unwrap_or_default(),
3170 r#additional_type: r#additional_type_property.unwrap_or_default(),
3171 r#alternate_name: r#alternate_name_property.unwrap_or_default(),
3172 r#description: r#description_property.unwrap_or_default(),
3173 r#disambiguating_description: r#disambiguating_description_property
3174 .unwrap_or_default(),
3175 r#identifier: r#identifier_property.unwrap_or_default(),
3176 r#image: r#image_property.unwrap_or_default(),
3177 r#main_entity_of_page: r#main_entity_of_page_property.unwrap_or_default(),
3178 r#name: r#name_property.unwrap_or_default(),
3179 r#potential_action: r#potential_action_property.unwrap_or_default(),
3180 r#same_as: r#same_as_property.unwrap_or_default(),
3181 r#subject_of: r#subject_of_property.unwrap_or_default(),
3182 r#url: r#url_property.unwrap_or_default(),
3183 })
3184 }
3185 }
3186 const FIELDS: &[&str] = &[
3187 "about",
3188 "actor",
3189 "aggregateRating",
3190 "attendee",
3191 "attendees",
3192 "audience",
3193 "composer",
3194 "contributor",
3195 "director",
3196 "doorTime",
3197 "duration",
3198 "endDate",
3199 "eventAttendanceMode",
3200 "eventSchedule",
3201 "eventStatus",
3202 "funder",
3203 "funding",
3204 "inLanguage",
3205 "isAccessibleForFree",
3206 "keywords",
3207 "location",
3208 "maximumAttendeeCapacity",
3209 "maximumPhysicalAttendeeCapacity",
3210 "maximumVirtualAttendeeCapacity",
3211 "offers",
3212 "organizer",
3213 "performer",
3214 "performers",
3215 "previousStartDate",
3216 "recordedIn",
3217 "remainingAttendeeCapacity",
3218 "review",
3219 "sponsor",
3220 "startDate",
3221 "subEvent",
3222 "subEvents",
3223 "superEvent",
3224 "translator",
3225 "typicalAgeRange",
3226 "workFeatured",
3227 "workPerformed",
3228 "additionalType",
3229 "alternateName",
3230 "description",
3231 "disambiguatingDescription",
3232 "identifier",
3233 "image",
3234 "mainEntityOfPage",
3235 "name",
3236 "potentialAction",
3237 "sameAs",
3238 "subjectOf",
3239 "url",
3240 ];
3241 deserializer.deserialize_struct("UserBlocks", FIELDS, ClassVisitor)
3242 }
3243 }
3244}