1use conjure_object::serde::{ser, de};
2use conjure_object::serde::ser::SerializeMap as SerializeMap_;
3use conjure_object::private::{UnionField_, UnionTypeField_};
4use std::fmt;
5#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
6pub enum SearchQuery {
7 Archived(bool),
8 SearchText(String),
10 ExactMatch(String),
12 After(super::super::api::Timestamp),
15 Before(super::super::api::Timestamp),
18 AdvancedTimeFilter(super::EventTimeFilter),
19 #[deprecated(note = "use assetRids")]
20 Asset(super::super::scout::rids::api::AssetRid),
21 Assets(super::AssetsFilter),
22 Template(super::super::scout::rids::api::TemplateRid),
23 Workbook(super::super::scout::rids::api::NotebookRid),
24 #[deprecated(note = "use dataReviews instead")]
25 DataReview(super::super::scout::rids::api::DataReviewRid),
26 DataReviews(super::DataReviewsFilter),
27 #[deprecated(note = "use originTypes instead")]
28 OriginType(super::SearchEventOriginType),
29 OriginTypes(super::OriginTypesFilter),
30 #[deprecated(note = "use dataReviewChecks instead")]
31 DataReviewCheck(super::super::scout::rids::api::CheckRid),
32 DataReviewChecks(super::DataReviewChecksFilter),
33 #[deprecated(note = "use dispositionStatuses instead")]
34 DispositionStatus(super::EventDispositionStatus),
35 DispositionStatuses(Vec<super::EventDispositionStatus>),
36 #[deprecated(note = "use priorities instead")]
37 Priority(super::super::scout::api::Priority),
38 Priorities(Vec<super::super::scout::api::Priority>),
39 #[deprecated(note = "use assignees instead")]
40 Assignee(super::super::scout::rids::api::UserRid),
41 Assignees(super::AssigneesFilter),
42 #[deprecated(note = "use eventTypes instead")]
43 EventType(super::EventType),
44 EventTypes(Vec<super::EventType>),
45 CreatedBy(super::super::scout::rids::api::UserRid),
46 CreatedByAnyOf(Vec<super::super::scout::rids::api::UserRid>),
47 #[deprecated(note = "use labels instead")]
48 Label(super::super::api::Label),
49 Labels(super::super::scout::rids::api::LabelsFilter),
50 #[deprecated(note = "use properties instead")]
51 Property(super::super::api::Property),
52 Properties(super::super::scout::rids::api::PropertiesFilter),
53 And(Vec<super::SearchQuery>),
54 Or(Vec<super::SearchQuery>),
55 Not(Box<super::SearchQuery>),
56 Workspace(super::super::api::rids::WorkspaceRid),
57 Procedure(super::super::api::rids::ProcedureRid),
58 ProcedureExecution(super::super::api::rids::ProcedureExecutionRid),
59 StepId(String),
60 StreamingChecklist(super::super::scout::rids::api::ChecklistRid),
63 StreamingCheck(super::super::scout::rids::api::CheckRid),
66 Unknown(Unknown),
68}
69impl ser::Serialize for SearchQuery {
70 fn serialize<S>(&self, s: S) -> Result<S::Ok, S::Error>
71 where
72 S: ser::Serializer,
73 {
74 let mut map = s.serialize_map(Some(2))?;
75 match self {
76 SearchQuery::Archived(value) => {
77 map.serialize_entry(&"type", &"archived")?;
78 map.serialize_entry(&"archived", value)?;
79 }
80 SearchQuery::SearchText(value) => {
81 map.serialize_entry(&"type", &"searchText")?;
82 map.serialize_entry(&"searchText", value)?;
83 }
84 SearchQuery::ExactMatch(value) => {
85 map.serialize_entry(&"type", &"exactMatch")?;
86 map.serialize_entry(&"exactMatch", value)?;
87 }
88 SearchQuery::After(value) => {
89 map.serialize_entry(&"type", &"after")?;
90 map.serialize_entry(&"after", value)?;
91 }
92 SearchQuery::Before(value) => {
93 map.serialize_entry(&"type", &"before")?;
94 map.serialize_entry(&"before", value)?;
95 }
96 SearchQuery::AdvancedTimeFilter(value) => {
97 map.serialize_entry(&"type", &"advancedTimeFilter")?;
98 map.serialize_entry(&"advancedTimeFilter", value)?;
99 }
100 #[allow(deprecated)]
101 SearchQuery::Asset(value) => {
102 map.serialize_entry(&"type", &"asset")?;
103 map.serialize_entry(&"asset", value)?;
104 }
105 SearchQuery::Assets(value) => {
106 map.serialize_entry(&"type", &"assets")?;
107 map.serialize_entry(&"assets", value)?;
108 }
109 SearchQuery::Template(value) => {
110 map.serialize_entry(&"type", &"template")?;
111 map.serialize_entry(&"template", value)?;
112 }
113 SearchQuery::Workbook(value) => {
114 map.serialize_entry(&"type", &"workbook")?;
115 map.serialize_entry(&"workbook", value)?;
116 }
117 #[allow(deprecated)]
118 SearchQuery::DataReview(value) => {
119 map.serialize_entry(&"type", &"dataReview")?;
120 map.serialize_entry(&"dataReview", value)?;
121 }
122 SearchQuery::DataReviews(value) => {
123 map.serialize_entry(&"type", &"dataReviews")?;
124 map.serialize_entry(&"dataReviews", value)?;
125 }
126 #[allow(deprecated)]
127 SearchQuery::OriginType(value) => {
128 map.serialize_entry(&"type", &"originType")?;
129 map.serialize_entry(&"originType", value)?;
130 }
131 SearchQuery::OriginTypes(value) => {
132 map.serialize_entry(&"type", &"originTypes")?;
133 map.serialize_entry(&"originTypes", value)?;
134 }
135 #[allow(deprecated)]
136 SearchQuery::DataReviewCheck(value) => {
137 map.serialize_entry(&"type", &"dataReviewCheck")?;
138 map.serialize_entry(&"dataReviewCheck", value)?;
139 }
140 SearchQuery::DataReviewChecks(value) => {
141 map.serialize_entry(&"type", &"dataReviewChecks")?;
142 map.serialize_entry(&"dataReviewChecks", value)?;
143 }
144 #[allow(deprecated)]
145 SearchQuery::DispositionStatus(value) => {
146 map.serialize_entry(&"type", &"dispositionStatus")?;
147 map.serialize_entry(&"dispositionStatus", value)?;
148 }
149 SearchQuery::DispositionStatuses(value) => {
150 map.serialize_entry(&"type", &"dispositionStatuses")?;
151 map.serialize_entry(&"dispositionStatuses", value)?;
152 }
153 #[allow(deprecated)]
154 SearchQuery::Priority(value) => {
155 map.serialize_entry(&"type", &"priority")?;
156 map.serialize_entry(&"priority", value)?;
157 }
158 SearchQuery::Priorities(value) => {
159 map.serialize_entry(&"type", &"priorities")?;
160 map.serialize_entry(&"priorities", value)?;
161 }
162 #[allow(deprecated)]
163 SearchQuery::Assignee(value) => {
164 map.serialize_entry(&"type", &"assignee")?;
165 map.serialize_entry(&"assignee", value)?;
166 }
167 SearchQuery::Assignees(value) => {
168 map.serialize_entry(&"type", &"assignees")?;
169 map.serialize_entry(&"assignees", value)?;
170 }
171 #[allow(deprecated)]
172 SearchQuery::EventType(value) => {
173 map.serialize_entry(&"type", &"eventType")?;
174 map.serialize_entry(&"eventType", value)?;
175 }
176 SearchQuery::EventTypes(value) => {
177 map.serialize_entry(&"type", &"eventTypes")?;
178 map.serialize_entry(&"eventTypes", value)?;
179 }
180 SearchQuery::CreatedBy(value) => {
181 map.serialize_entry(&"type", &"createdBy")?;
182 map.serialize_entry(&"createdBy", value)?;
183 }
184 SearchQuery::CreatedByAnyOf(value) => {
185 map.serialize_entry(&"type", &"createdByAnyOf")?;
186 map.serialize_entry(&"createdByAnyOf", value)?;
187 }
188 #[allow(deprecated)]
189 SearchQuery::Label(value) => {
190 map.serialize_entry(&"type", &"label")?;
191 map.serialize_entry(&"label", value)?;
192 }
193 SearchQuery::Labels(value) => {
194 map.serialize_entry(&"type", &"labels")?;
195 map.serialize_entry(&"labels", value)?;
196 }
197 #[allow(deprecated)]
198 SearchQuery::Property(value) => {
199 map.serialize_entry(&"type", &"property")?;
200 map.serialize_entry(&"property", value)?;
201 }
202 SearchQuery::Properties(value) => {
203 map.serialize_entry(&"type", &"properties")?;
204 map.serialize_entry(&"properties", value)?;
205 }
206 SearchQuery::And(value) => {
207 map.serialize_entry(&"type", &"and")?;
208 map.serialize_entry(&"and", value)?;
209 }
210 SearchQuery::Or(value) => {
211 map.serialize_entry(&"type", &"or")?;
212 map.serialize_entry(&"or", value)?;
213 }
214 SearchQuery::Not(value) => {
215 map.serialize_entry(&"type", &"not")?;
216 map.serialize_entry(&"not", value)?;
217 }
218 SearchQuery::Workspace(value) => {
219 map.serialize_entry(&"type", &"workspace")?;
220 map.serialize_entry(&"workspace", value)?;
221 }
222 SearchQuery::Procedure(value) => {
223 map.serialize_entry(&"type", &"procedure")?;
224 map.serialize_entry(&"procedure", value)?;
225 }
226 SearchQuery::ProcedureExecution(value) => {
227 map.serialize_entry(&"type", &"procedureExecution")?;
228 map.serialize_entry(&"procedureExecution", value)?;
229 }
230 SearchQuery::StepId(value) => {
231 map.serialize_entry(&"type", &"stepId")?;
232 map.serialize_entry(&"stepId", value)?;
233 }
234 SearchQuery::StreamingChecklist(value) => {
235 map.serialize_entry(&"type", &"streamingChecklist")?;
236 map.serialize_entry(&"streamingChecklist", value)?;
237 }
238 SearchQuery::StreamingCheck(value) => {
239 map.serialize_entry(&"type", &"streamingCheck")?;
240 map.serialize_entry(&"streamingCheck", value)?;
241 }
242 SearchQuery::Unknown(value) => {
243 map.serialize_entry(&"type", &value.type_)?;
244 map.serialize_entry(&value.type_, &value.value)?;
245 }
246 }
247 map.end()
248 }
249}
250impl<'de> de::Deserialize<'de> for SearchQuery {
251 fn deserialize<D>(d: D) -> Result<SearchQuery, D::Error>
252 where
253 D: de::Deserializer<'de>,
254 {
255 d.deserialize_map(Visitor_)
256 }
257}
258struct Visitor_;
259impl<'de> de::Visitor<'de> for Visitor_ {
260 type Value = SearchQuery;
261 fn expecting(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
262 fmt.write_str("union SearchQuery")
263 }
264 fn visit_map<A>(self, mut map: A) -> Result<SearchQuery, A::Error>
265 where
266 A: de::MapAccess<'de>,
267 {
268 let v = match map.next_key::<UnionField_<Variant_>>()? {
269 Some(UnionField_::Type) => {
270 let variant = map.next_value()?;
271 let key = map.next_key()?;
272 match (variant, key) {
273 (Variant_::Archived, Some(Variant_::Archived)) => {
274 let value = map.next_value()?;
275 SearchQuery::Archived(value)
276 }
277 (Variant_::SearchText, Some(Variant_::SearchText)) => {
278 let value = map.next_value()?;
279 SearchQuery::SearchText(value)
280 }
281 (Variant_::ExactMatch, Some(Variant_::ExactMatch)) => {
282 let value = map.next_value()?;
283 SearchQuery::ExactMatch(value)
284 }
285 (Variant_::After, Some(Variant_::After)) => {
286 let value = map.next_value()?;
287 SearchQuery::After(value)
288 }
289 (Variant_::Before, Some(Variant_::Before)) => {
290 let value = map.next_value()?;
291 SearchQuery::Before(value)
292 }
293 (
294 Variant_::AdvancedTimeFilter,
295 Some(Variant_::AdvancedTimeFilter),
296 ) => {
297 let value = map.next_value()?;
298 SearchQuery::AdvancedTimeFilter(value)
299 }
300 #[allow(deprecated)]
301 (Variant_::Asset, Some(Variant_::Asset)) => {
302 let value = map.next_value()?;
303 SearchQuery::Asset(value)
304 }
305 (Variant_::Assets, Some(Variant_::Assets)) => {
306 let value = map.next_value()?;
307 SearchQuery::Assets(value)
308 }
309 (Variant_::Template, Some(Variant_::Template)) => {
310 let value = map.next_value()?;
311 SearchQuery::Template(value)
312 }
313 (Variant_::Workbook, Some(Variant_::Workbook)) => {
314 let value = map.next_value()?;
315 SearchQuery::Workbook(value)
316 }
317 #[allow(deprecated)]
318 (Variant_::DataReview, Some(Variant_::DataReview)) => {
319 let value = map.next_value()?;
320 SearchQuery::DataReview(value)
321 }
322 (Variant_::DataReviews, Some(Variant_::DataReviews)) => {
323 let value = map.next_value()?;
324 SearchQuery::DataReviews(value)
325 }
326 #[allow(deprecated)]
327 (Variant_::OriginType, Some(Variant_::OriginType)) => {
328 let value = map.next_value()?;
329 SearchQuery::OriginType(value)
330 }
331 (Variant_::OriginTypes, Some(Variant_::OriginTypes)) => {
332 let value = map.next_value()?;
333 SearchQuery::OriginTypes(value)
334 }
335 #[allow(deprecated)]
336 (Variant_::DataReviewCheck, Some(Variant_::DataReviewCheck)) => {
337 let value = map.next_value()?;
338 SearchQuery::DataReviewCheck(value)
339 }
340 (Variant_::DataReviewChecks, Some(Variant_::DataReviewChecks)) => {
341 let value = map.next_value()?;
342 SearchQuery::DataReviewChecks(value)
343 }
344 #[allow(deprecated)]
345 (Variant_::DispositionStatus, Some(Variant_::DispositionStatus)) => {
346 let value = map.next_value()?;
347 SearchQuery::DispositionStatus(value)
348 }
349 (
350 Variant_::DispositionStatuses,
351 Some(Variant_::DispositionStatuses),
352 ) => {
353 let value = map.next_value()?;
354 SearchQuery::DispositionStatuses(value)
355 }
356 #[allow(deprecated)]
357 (Variant_::Priority, Some(Variant_::Priority)) => {
358 let value = map.next_value()?;
359 SearchQuery::Priority(value)
360 }
361 (Variant_::Priorities, Some(Variant_::Priorities)) => {
362 let value = map.next_value()?;
363 SearchQuery::Priorities(value)
364 }
365 #[allow(deprecated)]
366 (Variant_::Assignee, Some(Variant_::Assignee)) => {
367 let value = map.next_value()?;
368 SearchQuery::Assignee(value)
369 }
370 (Variant_::Assignees, Some(Variant_::Assignees)) => {
371 let value = map.next_value()?;
372 SearchQuery::Assignees(value)
373 }
374 #[allow(deprecated)]
375 (Variant_::EventType, Some(Variant_::EventType)) => {
376 let value = map.next_value()?;
377 SearchQuery::EventType(value)
378 }
379 (Variant_::EventTypes, Some(Variant_::EventTypes)) => {
380 let value = map.next_value()?;
381 SearchQuery::EventTypes(value)
382 }
383 (Variant_::CreatedBy, Some(Variant_::CreatedBy)) => {
384 let value = map.next_value()?;
385 SearchQuery::CreatedBy(value)
386 }
387 (Variant_::CreatedByAnyOf, Some(Variant_::CreatedByAnyOf)) => {
388 let value = map.next_value()?;
389 SearchQuery::CreatedByAnyOf(value)
390 }
391 #[allow(deprecated)]
392 (Variant_::Label, Some(Variant_::Label)) => {
393 let value = map.next_value()?;
394 SearchQuery::Label(value)
395 }
396 (Variant_::Labels, Some(Variant_::Labels)) => {
397 let value = map.next_value()?;
398 SearchQuery::Labels(value)
399 }
400 #[allow(deprecated)]
401 (Variant_::Property, Some(Variant_::Property)) => {
402 let value = map.next_value()?;
403 SearchQuery::Property(value)
404 }
405 (Variant_::Properties, Some(Variant_::Properties)) => {
406 let value = map.next_value()?;
407 SearchQuery::Properties(value)
408 }
409 (Variant_::And, Some(Variant_::And)) => {
410 let value = map.next_value()?;
411 SearchQuery::And(value)
412 }
413 (Variant_::Or, Some(Variant_::Or)) => {
414 let value = map.next_value()?;
415 SearchQuery::Or(value)
416 }
417 (Variant_::Not, Some(Variant_::Not)) => {
418 let value = map.next_value()?;
419 SearchQuery::Not(value)
420 }
421 (Variant_::Workspace, Some(Variant_::Workspace)) => {
422 let value = map.next_value()?;
423 SearchQuery::Workspace(value)
424 }
425 (Variant_::Procedure, Some(Variant_::Procedure)) => {
426 let value = map.next_value()?;
427 SearchQuery::Procedure(value)
428 }
429 (
430 Variant_::ProcedureExecution,
431 Some(Variant_::ProcedureExecution),
432 ) => {
433 let value = map.next_value()?;
434 SearchQuery::ProcedureExecution(value)
435 }
436 (Variant_::StepId, Some(Variant_::StepId)) => {
437 let value = map.next_value()?;
438 SearchQuery::StepId(value)
439 }
440 (
441 Variant_::StreamingChecklist,
442 Some(Variant_::StreamingChecklist),
443 ) => {
444 let value = map.next_value()?;
445 SearchQuery::StreamingChecklist(value)
446 }
447 (Variant_::StreamingCheck, Some(Variant_::StreamingCheck)) => {
448 let value = map.next_value()?;
449 SearchQuery::StreamingCheck(value)
450 }
451 (Variant_::Unknown(type_), Some(Variant_::Unknown(b))) => {
452 if type_ == b {
453 let value = map.next_value()?;
454 SearchQuery::Unknown(Unknown { type_, value })
455 } else {
456 return Err(
457 de::Error::invalid_value(de::Unexpected::Str(&type_), &&*b),
458 )
459 }
460 }
461 (variant, Some(key)) => {
462 return Err(
463 de::Error::invalid_value(
464 de::Unexpected::Str(key.as_str()),
465 &variant.as_str(),
466 ),
467 );
468 }
469 (variant, None) => {
470 return Err(de::Error::missing_field(variant.as_str()));
471 }
472 }
473 }
474 Some(UnionField_::Value(variant)) => {
475 let value = match &variant {
476 Variant_::Archived => {
477 let value = map.next_value()?;
478 SearchQuery::Archived(value)
479 }
480 Variant_::SearchText => {
481 let value = map.next_value()?;
482 SearchQuery::SearchText(value)
483 }
484 Variant_::ExactMatch => {
485 let value = map.next_value()?;
486 SearchQuery::ExactMatch(value)
487 }
488 Variant_::After => {
489 let value = map.next_value()?;
490 SearchQuery::After(value)
491 }
492 Variant_::Before => {
493 let value = map.next_value()?;
494 SearchQuery::Before(value)
495 }
496 Variant_::AdvancedTimeFilter => {
497 let value = map.next_value()?;
498 SearchQuery::AdvancedTimeFilter(value)
499 }
500 Variant_::Asset => {
501 let value = map.next_value()?;
502 #[allow(deprecated)] SearchQuery::Asset(value)
503 }
504 Variant_::Assets => {
505 let value = map.next_value()?;
506 SearchQuery::Assets(value)
507 }
508 Variant_::Template => {
509 let value = map.next_value()?;
510 SearchQuery::Template(value)
511 }
512 Variant_::Workbook => {
513 let value = map.next_value()?;
514 SearchQuery::Workbook(value)
515 }
516 Variant_::DataReview => {
517 let value = map.next_value()?;
518 #[allow(deprecated)] SearchQuery::DataReview(value)
519 }
520 Variant_::DataReviews => {
521 let value = map.next_value()?;
522 SearchQuery::DataReviews(value)
523 }
524 Variant_::OriginType => {
525 let value = map.next_value()?;
526 #[allow(deprecated)] SearchQuery::OriginType(value)
527 }
528 Variant_::OriginTypes => {
529 let value = map.next_value()?;
530 SearchQuery::OriginTypes(value)
531 }
532 Variant_::DataReviewCheck => {
533 let value = map.next_value()?;
534 #[allow(deprecated)] SearchQuery::DataReviewCheck(value)
535 }
536 Variant_::DataReviewChecks => {
537 let value = map.next_value()?;
538 SearchQuery::DataReviewChecks(value)
539 }
540 Variant_::DispositionStatus => {
541 let value = map.next_value()?;
542 #[allow(deprecated)] SearchQuery::DispositionStatus(value)
543 }
544 Variant_::DispositionStatuses => {
545 let value = map.next_value()?;
546 SearchQuery::DispositionStatuses(value)
547 }
548 Variant_::Priority => {
549 let value = map.next_value()?;
550 #[allow(deprecated)] SearchQuery::Priority(value)
551 }
552 Variant_::Priorities => {
553 let value = map.next_value()?;
554 SearchQuery::Priorities(value)
555 }
556 Variant_::Assignee => {
557 let value = map.next_value()?;
558 #[allow(deprecated)] SearchQuery::Assignee(value)
559 }
560 Variant_::Assignees => {
561 let value = map.next_value()?;
562 SearchQuery::Assignees(value)
563 }
564 Variant_::EventType => {
565 let value = map.next_value()?;
566 #[allow(deprecated)] SearchQuery::EventType(value)
567 }
568 Variant_::EventTypes => {
569 let value = map.next_value()?;
570 SearchQuery::EventTypes(value)
571 }
572 Variant_::CreatedBy => {
573 let value = map.next_value()?;
574 SearchQuery::CreatedBy(value)
575 }
576 Variant_::CreatedByAnyOf => {
577 let value = map.next_value()?;
578 SearchQuery::CreatedByAnyOf(value)
579 }
580 Variant_::Label => {
581 let value = map.next_value()?;
582 #[allow(deprecated)] SearchQuery::Label(value)
583 }
584 Variant_::Labels => {
585 let value = map.next_value()?;
586 SearchQuery::Labels(value)
587 }
588 Variant_::Property => {
589 let value = map.next_value()?;
590 #[allow(deprecated)] SearchQuery::Property(value)
591 }
592 Variant_::Properties => {
593 let value = map.next_value()?;
594 SearchQuery::Properties(value)
595 }
596 Variant_::And => {
597 let value = map.next_value()?;
598 SearchQuery::And(value)
599 }
600 Variant_::Or => {
601 let value = map.next_value()?;
602 SearchQuery::Or(value)
603 }
604 Variant_::Not => {
605 let value = map.next_value()?;
606 SearchQuery::Not(value)
607 }
608 Variant_::Workspace => {
609 let value = map.next_value()?;
610 SearchQuery::Workspace(value)
611 }
612 Variant_::Procedure => {
613 let value = map.next_value()?;
614 SearchQuery::Procedure(value)
615 }
616 Variant_::ProcedureExecution => {
617 let value = map.next_value()?;
618 SearchQuery::ProcedureExecution(value)
619 }
620 Variant_::StepId => {
621 let value = map.next_value()?;
622 SearchQuery::StepId(value)
623 }
624 Variant_::StreamingChecklist => {
625 let value = map.next_value()?;
626 SearchQuery::StreamingChecklist(value)
627 }
628 Variant_::StreamingCheck => {
629 let value = map.next_value()?;
630 SearchQuery::StreamingCheck(value)
631 }
632 Variant_::Unknown(type_) => {
633 let value = map.next_value()?;
634 SearchQuery::Unknown(Unknown {
635 type_: type_.clone(),
636 value,
637 })
638 }
639 };
640 if map.next_key::<UnionTypeField_>()?.is_none() {
641 return Err(de::Error::missing_field("type"));
642 }
643 let type_variant = map.next_value::<Variant_>()?;
644 if variant != type_variant {
645 return Err(
646 de::Error::invalid_value(
647 de::Unexpected::Str(type_variant.as_str()),
648 &variant.as_str(),
649 ),
650 );
651 }
652 value
653 }
654 None => return Err(de::Error::missing_field("type")),
655 };
656 if map.next_key::<UnionField_<Variant_>>()?.is_some() {
657 return Err(de::Error::invalid_length(3, &"type and value fields"));
658 }
659 Ok(v)
660 }
661}
662#[derive(PartialEq)]
663enum Variant_ {
664 Archived,
665 SearchText,
666 ExactMatch,
667 After,
668 Before,
669 AdvancedTimeFilter,
670 Asset,
671 Assets,
672 Template,
673 Workbook,
674 DataReview,
675 DataReviews,
676 OriginType,
677 OriginTypes,
678 DataReviewCheck,
679 DataReviewChecks,
680 DispositionStatus,
681 DispositionStatuses,
682 Priority,
683 Priorities,
684 Assignee,
685 Assignees,
686 EventType,
687 EventTypes,
688 CreatedBy,
689 CreatedByAnyOf,
690 Label,
691 Labels,
692 Property,
693 Properties,
694 And,
695 Or,
696 Not,
697 Workspace,
698 Procedure,
699 ProcedureExecution,
700 StepId,
701 StreamingChecklist,
702 StreamingCheck,
703 Unknown(Box<str>),
704}
705impl Variant_ {
706 fn as_str(&self) -> &'static str {
707 match *self {
708 Variant_::Archived => "archived",
709 Variant_::SearchText => "searchText",
710 Variant_::ExactMatch => "exactMatch",
711 Variant_::After => "after",
712 Variant_::Before => "before",
713 Variant_::AdvancedTimeFilter => "advancedTimeFilter",
714 Variant_::Asset => "asset",
715 Variant_::Assets => "assets",
716 Variant_::Template => "template",
717 Variant_::Workbook => "workbook",
718 Variant_::DataReview => "dataReview",
719 Variant_::DataReviews => "dataReviews",
720 Variant_::OriginType => "originType",
721 Variant_::OriginTypes => "originTypes",
722 Variant_::DataReviewCheck => "dataReviewCheck",
723 Variant_::DataReviewChecks => "dataReviewChecks",
724 Variant_::DispositionStatus => "dispositionStatus",
725 Variant_::DispositionStatuses => "dispositionStatuses",
726 Variant_::Priority => "priority",
727 Variant_::Priorities => "priorities",
728 Variant_::Assignee => "assignee",
729 Variant_::Assignees => "assignees",
730 Variant_::EventType => "eventType",
731 Variant_::EventTypes => "eventTypes",
732 Variant_::CreatedBy => "createdBy",
733 Variant_::CreatedByAnyOf => "createdByAnyOf",
734 Variant_::Label => "label",
735 Variant_::Labels => "labels",
736 Variant_::Property => "property",
737 Variant_::Properties => "properties",
738 Variant_::And => "and",
739 Variant_::Or => "or",
740 Variant_::Not => "not",
741 Variant_::Workspace => "workspace",
742 Variant_::Procedure => "procedure",
743 Variant_::ProcedureExecution => "procedureExecution",
744 Variant_::StepId => "stepId",
745 Variant_::StreamingChecklist => "streamingChecklist",
746 Variant_::StreamingCheck => "streamingCheck",
747 Variant_::Unknown(_) => "unknown variant",
748 }
749 }
750}
751impl<'de> de::Deserialize<'de> for Variant_ {
752 fn deserialize<D>(d: D) -> Result<Variant_, D::Error>
753 where
754 D: de::Deserializer<'de>,
755 {
756 d.deserialize_str(VariantVisitor_)
757 }
758}
759struct VariantVisitor_;
760impl<'de> de::Visitor<'de> for VariantVisitor_ {
761 type Value = Variant_;
762 fn expecting(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
763 fmt.write_str("string")
764 }
765 fn visit_str<E>(self, value: &str) -> Result<Variant_, E>
766 where
767 E: de::Error,
768 {
769 let v = match value {
770 "archived" => Variant_::Archived,
771 "searchText" => Variant_::SearchText,
772 "exactMatch" => Variant_::ExactMatch,
773 "after" => Variant_::After,
774 "before" => Variant_::Before,
775 "advancedTimeFilter" => Variant_::AdvancedTimeFilter,
776 "asset" => Variant_::Asset,
777 "assets" => Variant_::Assets,
778 "template" => Variant_::Template,
779 "workbook" => Variant_::Workbook,
780 "dataReview" => Variant_::DataReview,
781 "dataReviews" => Variant_::DataReviews,
782 "originType" => Variant_::OriginType,
783 "originTypes" => Variant_::OriginTypes,
784 "dataReviewCheck" => Variant_::DataReviewCheck,
785 "dataReviewChecks" => Variant_::DataReviewChecks,
786 "dispositionStatus" => Variant_::DispositionStatus,
787 "dispositionStatuses" => Variant_::DispositionStatuses,
788 "priority" => Variant_::Priority,
789 "priorities" => Variant_::Priorities,
790 "assignee" => Variant_::Assignee,
791 "assignees" => Variant_::Assignees,
792 "eventType" => Variant_::EventType,
793 "eventTypes" => Variant_::EventTypes,
794 "createdBy" => Variant_::CreatedBy,
795 "createdByAnyOf" => Variant_::CreatedByAnyOf,
796 "label" => Variant_::Label,
797 "labels" => Variant_::Labels,
798 "property" => Variant_::Property,
799 "properties" => Variant_::Properties,
800 "and" => Variant_::And,
801 "or" => Variant_::Or,
802 "not" => Variant_::Not,
803 "workspace" => Variant_::Workspace,
804 "procedure" => Variant_::Procedure,
805 "procedureExecution" => Variant_::ProcedureExecution,
806 "stepId" => Variant_::StepId,
807 "streamingChecklist" => Variant_::StreamingChecklist,
808 "streamingCheck" => Variant_::StreamingCheck,
809 value => Variant_::Unknown(value.to_string().into_boxed_str()),
810 };
811 Ok(v)
812 }
813}
814#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
816pub struct Unknown {
817 type_: Box<str>,
818 value: conjure_object::Any,
819}
820impl Unknown {
821 #[inline]
823 pub fn type_(&self) -> &str {
824 &self.type_
825 }
826}