A better Rust ATProto crate
at main 43 kB view raw
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: tools.ozone.report.defs 4// 5// This file was automatically generated from Lexicon schemas. 6// Any manual changes will be overwritten on the next regeneration. 7 8/// Appeal a previously taken moderation action 9#[derive( 10 serde::Serialize, 11 serde::Deserialize, 12 Debug, 13 Clone, 14 PartialEq, 15 Eq, 16 Hash, 17 jacquard_derive::IntoStatic 18)] 19pub struct ReasonAppeal; 20impl std::fmt::Display for ReasonAppeal { 21 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 22 write!(f, "reasonAppeal") 23 } 24} 25 26/// Child sexual abuse material (CSAM). These reports will be sent only be sent to the application's Moderation Authority. 27#[derive( 28 serde::Serialize, 29 serde::Deserialize, 30 Debug, 31 Clone, 32 PartialEq, 33 Eq, 34 Hash, 35 jacquard_derive::IntoStatic 36)] 37pub struct ReasonChildSafetyCsam; 38impl std::fmt::Display for ReasonChildSafetyCsam { 39 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 40 write!(f, "reasonChildSafetyCSAM") 41 } 42} 43 44/// Grooming or predatory behavior. These reports will be sent only be sent to the application's Moderation Authority. 45#[derive( 46 serde::Serialize, 47 serde::Deserialize, 48 Debug, 49 Clone, 50 PartialEq, 51 Eq, 52 Hash, 53 jacquard_derive::IntoStatic 54)] 55pub struct ReasonChildSafetyGroom; 56impl std::fmt::Display for ReasonChildSafetyGroom { 57 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 58 write!(f, "reasonChildSafetyGroom") 59 } 60} 61 62/// Harassment or bullying of minors 63#[derive( 64 serde::Serialize, 65 serde::Deserialize, 66 Debug, 67 Clone, 68 PartialEq, 69 Eq, 70 Hash, 71 jacquard_derive::IntoStatic 72)] 73pub struct ReasonChildSafetyHarassment; 74impl std::fmt::Display for ReasonChildSafetyHarassment { 75 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 76 write!(f, "reasonChildSafetyHarassment") 77 } 78} 79 80/// Other child safety. These reports will be sent only be sent to the application's Moderation Authority. 81#[derive( 82 serde::Serialize, 83 serde::Deserialize, 84 Debug, 85 Clone, 86 PartialEq, 87 Eq, 88 Hash, 89 jacquard_derive::IntoStatic 90)] 91pub struct ReasonChildSafetyOther; 92impl std::fmt::Display for ReasonChildSafetyOther { 93 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 94 write!(f, "reasonChildSafetyOther") 95 } 96} 97 98/// Privacy violation involving a minor 99#[derive( 100 serde::Serialize, 101 serde::Deserialize, 102 Debug, 103 Clone, 104 PartialEq, 105 Eq, 106 Hash, 107 jacquard_derive::IntoStatic 108)] 109pub struct ReasonChildSafetyPrivacy; 110impl std::fmt::Display for ReasonChildSafetyPrivacy { 111 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 112 write!(f, "reasonChildSafetyPrivacy") 113 } 114} 115 116/// Doxxing 117#[derive( 118 serde::Serialize, 119 serde::Deserialize, 120 Debug, 121 Clone, 122 PartialEq, 123 Eq, 124 Hash, 125 jacquard_derive::IntoStatic 126)] 127pub struct ReasonHarassmentDoxxing; 128impl std::fmt::Display for ReasonHarassmentDoxxing { 129 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 130 write!(f, "reasonHarassmentDoxxing") 131 } 132} 133 134/// Hate speech 135#[derive( 136 serde::Serialize, 137 serde::Deserialize, 138 Debug, 139 Clone, 140 PartialEq, 141 Eq, 142 Hash, 143 jacquard_derive::IntoStatic 144)] 145pub struct ReasonHarassmentHateSpeech; 146impl std::fmt::Display for ReasonHarassmentHateSpeech { 147 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 148 write!(f, "reasonHarassmentHateSpeech") 149 } 150} 151 152/// Other harassing or hateful content 153#[derive( 154 serde::Serialize, 155 serde::Deserialize, 156 Debug, 157 Clone, 158 PartialEq, 159 Eq, 160 Hash, 161 jacquard_derive::IntoStatic 162)] 163pub struct ReasonHarassmentOther; 164impl std::fmt::Display for ReasonHarassmentOther { 165 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 166 write!(f, "reasonHarassmentOther") 167 } 168} 169 170/// Targeted harassment 171#[derive( 172 serde::Serialize, 173 serde::Deserialize, 174 Debug, 175 Clone, 176 PartialEq, 177 Eq, 178 Hash, 179 jacquard_derive::IntoStatic 180)] 181pub struct ReasonHarassmentTargeted; 182impl std::fmt::Display for ReasonHarassmentTargeted { 183 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 184 write!(f, "reasonHarassmentTargeted") 185 } 186} 187 188/// Trolling 189#[derive( 190 serde::Serialize, 191 serde::Deserialize, 192 Debug, 193 Clone, 194 PartialEq, 195 Eq, 196 Hash, 197 jacquard_derive::IntoStatic 198)] 199pub struct ReasonHarassmentTroll; 200impl std::fmt::Display for ReasonHarassmentTroll { 201 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 202 write!(f, "reasonHarassmentTroll") 203 } 204} 205 206/// Fake account or bot 207#[derive( 208 serde::Serialize, 209 serde::Deserialize, 210 Debug, 211 Clone, 212 PartialEq, 213 Eq, 214 Hash, 215 jacquard_derive::IntoStatic 216)] 217pub struct ReasonMisleadingBot; 218impl std::fmt::Display for ReasonMisleadingBot { 219 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 220 write!(f, "reasonMisleadingBot") 221 } 222} 223 224/// False information about elections 225#[derive( 226 serde::Serialize, 227 serde::Deserialize, 228 Debug, 229 Clone, 230 PartialEq, 231 Eq, 232 Hash, 233 jacquard_derive::IntoStatic 234)] 235pub struct ReasonMisleadingElections; 236impl std::fmt::Display for ReasonMisleadingElections { 237 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 238 write!(f, "reasonMisleadingElections") 239 } 240} 241 242/// Impersonation 243#[derive( 244 serde::Serialize, 245 serde::Deserialize, 246 Debug, 247 Clone, 248 PartialEq, 249 Eq, 250 Hash, 251 jacquard_derive::IntoStatic 252)] 253pub struct ReasonMisleadingImpersonation; 254impl std::fmt::Display for ReasonMisleadingImpersonation { 255 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 256 write!(f, "reasonMisleadingImpersonation") 257 } 258} 259 260/// Other misleading content 261#[derive( 262 serde::Serialize, 263 serde::Deserialize, 264 Debug, 265 Clone, 266 PartialEq, 267 Eq, 268 Hash, 269 jacquard_derive::IntoStatic 270)] 271pub struct ReasonMisleadingOther; 272impl std::fmt::Display for ReasonMisleadingOther { 273 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 274 write!(f, "reasonMisleadingOther") 275 } 276} 277 278/// Scam 279#[derive( 280 serde::Serialize, 281 serde::Deserialize, 282 Debug, 283 Clone, 284 PartialEq, 285 Eq, 286 Hash, 287 jacquard_derive::IntoStatic 288)] 289pub struct ReasonMisleadingScam; 290impl std::fmt::Display for ReasonMisleadingScam { 291 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 292 write!(f, "reasonMisleadingScam") 293 } 294} 295 296/// Spam 297#[derive( 298 serde::Serialize, 299 serde::Deserialize, 300 Debug, 301 Clone, 302 PartialEq, 303 Eq, 304 Hash, 305 jacquard_derive::IntoStatic 306)] 307pub struct ReasonMisleadingSpam; 308impl std::fmt::Display for ReasonMisleadingSpam { 309 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 310 write!(f, "reasonMisleadingSpam") 311 } 312} 313 314/// An issue not included in these options 315#[derive( 316 serde::Serialize, 317 serde::Deserialize, 318 Debug, 319 Clone, 320 PartialEq, 321 Eq, 322 Hash, 323 jacquard_derive::IntoStatic 324)] 325pub struct ReasonOther; 326impl std::fmt::Display for ReasonOther { 327 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 328 write!(f, "reasonOther") 329 } 330} 331 332/// Banned user returning 333#[derive( 334 serde::Serialize, 335 serde::Deserialize, 336 Debug, 337 Clone, 338 PartialEq, 339 Eq, 340 Hash, 341 jacquard_derive::IntoStatic 342)] 343pub struct ReasonRuleBanEvasion; 344impl std::fmt::Display for ReasonRuleBanEvasion { 345 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 346 write!(f, "reasonRuleBanEvasion") 347 } 348} 349 350/// Other 351#[derive( 352 serde::Serialize, 353 serde::Deserialize, 354 Debug, 355 Clone, 356 PartialEq, 357 Eq, 358 Hash, 359 jacquard_derive::IntoStatic 360)] 361pub struct ReasonRuleOther; 362impl std::fmt::Display for ReasonRuleOther { 363 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 364 write!(f, "reasonRuleOther") 365 } 366} 367 368/// Promoting or selling prohibited items or services 369#[derive( 370 serde::Serialize, 371 serde::Deserialize, 372 Debug, 373 Clone, 374 PartialEq, 375 Eq, 376 Hash, 377 jacquard_derive::IntoStatic 378)] 379pub struct ReasonRuleProhibitedSales; 380impl std::fmt::Display for ReasonRuleProhibitedSales { 381 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 382 write!(f, "reasonRuleProhibitedSales") 383 } 384} 385 386/// Hacking or system attacks 387#[derive( 388 serde::Serialize, 389 serde::Deserialize, 390 Debug, 391 Clone, 392 PartialEq, 393 Eq, 394 Hash, 395 jacquard_derive::IntoStatic 396)] 397pub struct ReasonRuleSiteSecurity; 398impl std::fmt::Display for ReasonRuleSiteSecurity { 399 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 400 write!(f, "reasonRuleSiteSecurity") 401 } 402} 403 404/// Content promoting or depicting self-harm 405#[derive( 406 serde::Serialize, 407 serde::Deserialize, 408 Debug, 409 Clone, 410 PartialEq, 411 Eq, 412 Hash, 413 jacquard_derive::IntoStatic 414)] 415pub struct ReasonSelfHarmContent; 416impl std::fmt::Display for ReasonSelfHarmContent { 417 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 418 write!(f, "reasonSelfHarmContent") 419 } 420} 421 422/// Eating disorders 423#[derive( 424 serde::Serialize, 425 serde::Deserialize, 426 Debug, 427 Clone, 428 PartialEq, 429 Eq, 430 Hash, 431 jacquard_derive::IntoStatic 432)] 433pub struct ReasonSelfHarmEd; 434impl std::fmt::Display for ReasonSelfHarmEd { 435 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 436 write!(f, "reasonSelfHarmED") 437 } 438} 439 440/// Other dangerous content 441#[derive( 442 serde::Serialize, 443 serde::Deserialize, 444 Debug, 445 Clone, 446 PartialEq, 447 Eq, 448 Hash, 449 jacquard_derive::IntoStatic 450)] 451pub struct ReasonSelfHarmOther; 452impl std::fmt::Display for ReasonSelfHarmOther { 453 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 454 write!(f, "reasonSelfHarmOther") 455 } 456} 457 458/// Dangerous challenges or activities 459#[derive( 460 serde::Serialize, 461 serde::Deserialize, 462 Debug, 463 Clone, 464 PartialEq, 465 Eq, 466 Hash, 467 jacquard_derive::IntoStatic 468)] 469pub struct ReasonSelfHarmStunts; 470impl std::fmt::Display for ReasonSelfHarmStunts { 471 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 472 write!(f, "reasonSelfHarmStunts") 473 } 474} 475 476/// Dangerous substances or drug abuse 477#[derive( 478 serde::Serialize, 479 serde::Deserialize, 480 Debug, 481 Clone, 482 PartialEq, 483 Eq, 484 Hash, 485 jacquard_derive::IntoStatic 486)] 487pub struct ReasonSelfHarmSubstances; 488impl std::fmt::Display for ReasonSelfHarmSubstances { 489 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 490 write!(f, "reasonSelfHarmSubstances") 491 } 492} 493 494/// Adult sexual abuse content 495#[derive( 496 serde::Serialize, 497 serde::Deserialize, 498 Debug, 499 Clone, 500 PartialEq, 501 Eq, 502 Hash, 503 jacquard_derive::IntoStatic 504)] 505pub struct ReasonSexualAbuseContent; 506impl std::fmt::Display for ReasonSexualAbuseContent { 507 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 508 write!(f, "reasonSexualAbuseContent") 509 } 510} 511 512/// Animal sexual abuse 513#[derive( 514 serde::Serialize, 515 serde::Deserialize, 516 Debug, 517 Clone, 518 PartialEq, 519 Eq, 520 Hash, 521 jacquard_derive::IntoStatic 522)] 523pub struct ReasonSexualAnimal; 524impl std::fmt::Display for ReasonSexualAnimal { 525 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 526 write!(f, "reasonSexualAnimal") 527 } 528} 529 530/// Deepfake adult content 531#[derive( 532 serde::Serialize, 533 serde::Deserialize, 534 Debug, 535 Clone, 536 PartialEq, 537 Eq, 538 Hash, 539 jacquard_derive::IntoStatic 540)] 541pub struct ReasonSexualDeepfake; 542impl std::fmt::Display for ReasonSexualDeepfake { 543 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 544 write!(f, "reasonSexualDeepfake") 545 } 546} 547 548/// Non-consensual intimate imagery 549#[derive( 550 serde::Serialize, 551 serde::Deserialize, 552 Debug, 553 Clone, 554 PartialEq, 555 Eq, 556 Hash, 557 jacquard_derive::IntoStatic 558)] 559pub struct ReasonSexualNcii; 560impl std::fmt::Display for ReasonSexualNcii { 561 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 562 write!(f, "reasonSexualNCII") 563 } 564} 565 566/// Other sexual violence content 567#[derive( 568 serde::Serialize, 569 serde::Deserialize, 570 Debug, 571 Clone, 572 PartialEq, 573 Eq, 574 Hash, 575 jacquard_derive::IntoStatic 576)] 577pub struct ReasonSexualOther; 578impl std::fmt::Display for ReasonSexualOther { 579 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 580 write!(f, "reasonSexualOther") 581 } 582} 583 584/// Unlabelled adult content 585#[derive( 586 serde::Serialize, 587 serde::Deserialize, 588 Debug, 589 Clone, 590 PartialEq, 591 Eq, 592 Hash, 593 jacquard_derive::IntoStatic 594)] 595pub struct ReasonSexualUnlabeled; 596impl std::fmt::Display for ReasonSexualUnlabeled { 597 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 598 write!(f, "reasonSexualUnlabeled") 599 } 600} 601 602#[derive(Debug, Clone, PartialEq, Eq, Hash)] 603pub enum ReasonType<'a> { 604 ToolsOzoneReportDefsReasonAppeal, 605 ToolsOzoneReportDefsReasonOther, 606 ToolsOzoneReportDefsReasonViolenceAnimal, 607 ToolsOzoneReportDefsReasonViolenceThreats, 608 ToolsOzoneReportDefsReasonViolenceGraphicContent, 609 ToolsOzoneReportDefsReasonViolenceGlorification, 610 ToolsOzoneReportDefsReasonViolenceExtremistContent, 611 ToolsOzoneReportDefsReasonViolenceTrafficking, 612 ToolsOzoneReportDefsReasonViolenceOther, 613 ToolsOzoneReportDefsReasonSexualAbuseContent, 614 ToolsOzoneReportDefsReasonSexualNcii, 615 ToolsOzoneReportDefsReasonSexualDeepfake, 616 ToolsOzoneReportDefsReasonSexualAnimal, 617 ToolsOzoneReportDefsReasonSexualUnlabeled, 618 ToolsOzoneReportDefsReasonSexualOther, 619 ToolsOzoneReportDefsReasonChildSafetyCsam, 620 ToolsOzoneReportDefsReasonChildSafetyGroom, 621 ToolsOzoneReportDefsReasonChildSafetyPrivacy, 622 ToolsOzoneReportDefsReasonChildSafetyHarassment, 623 ToolsOzoneReportDefsReasonChildSafetyOther, 624 ToolsOzoneReportDefsReasonHarassmentTroll, 625 ToolsOzoneReportDefsReasonHarassmentTargeted, 626 ToolsOzoneReportDefsReasonHarassmentHateSpeech, 627 ToolsOzoneReportDefsReasonHarassmentDoxxing, 628 ToolsOzoneReportDefsReasonHarassmentOther, 629 ToolsOzoneReportDefsReasonMisleadingBot, 630 ToolsOzoneReportDefsReasonMisleadingImpersonation, 631 ToolsOzoneReportDefsReasonMisleadingSpam, 632 ToolsOzoneReportDefsReasonMisleadingScam, 633 ToolsOzoneReportDefsReasonMisleadingElections, 634 ToolsOzoneReportDefsReasonMisleadingOther, 635 ToolsOzoneReportDefsReasonRuleSiteSecurity, 636 ToolsOzoneReportDefsReasonRuleProhibitedSales, 637 ToolsOzoneReportDefsReasonRuleBanEvasion, 638 ToolsOzoneReportDefsReasonRuleOther, 639 ToolsOzoneReportDefsReasonSelfHarmContent, 640 ToolsOzoneReportDefsReasonSelfHarmEd, 641 ToolsOzoneReportDefsReasonSelfHarmStunts, 642 ToolsOzoneReportDefsReasonSelfHarmSubstances, 643 ToolsOzoneReportDefsReasonSelfHarmOther, 644 Other(jacquard_common::CowStr<'a>), 645} 646 647impl<'a> ReasonType<'a> { 648 pub fn as_str(&self) -> &str { 649 match self { 650 Self::ToolsOzoneReportDefsReasonAppeal => { 651 "tools.ozone.report.defs#reasonAppeal" 652 } 653 Self::ToolsOzoneReportDefsReasonOther => { 654 "tools.ozone.report.defs#reasonOther" 655 } 656 Self::ToolsOzoneReportDefsReasonViolenceAnimal => { 657 "tools.ozone.report.defs#reasonViolenceAnimal" 658 } 659 Self::ToolsOzoneReportDefsReasonViolenceThreats => { 660 "tools.ozone.report.defs#reasonViolenceThreats" 661 } 662 Self::ToolsOzoneReportDefsReasonViolenceGraphicContent => { 663 "tools.ozone.report.defs#reasonViolenceGraphicContent" 664 } 665 Self::ToolsOzoneReportDefsReasonViolenceGlorification => { 666 "tools.ozone.report.defs#reasonViolenceGlorification" 667 } 668 Self::ToolsOzoneReportDefsReasonViolenceExtremistContent => { 669 "tools.ozone.report.defs#reasonViolenceExtremistContent" 670 } 671 Self::ToolsOzoneReportDefsReasonViolenceTrafficking => { 672 "tools.ozone.report.defs#reasonViolenceTrafficking" 673 } 674 Self::ToolsOzoneReportDefsReasonViolenceOther => { 675 "tools.ozone.report.defs#reasonViolenceOther" 676 } 677 Self::ToolsOzoneReportDefsReasonSexualAbuseContent => { 678 "tools.ozone.report.defs#reasonSexualAbuseContent" 679 } 680 Self::ToolsOzoneReportDefsReasonSexualNcii => { 681 "tools.ozone.report.defs#reasonSexualNCII" 682 } 683 Self::ToolsOzoneReportDefsReasonSexualDeepfake => { 684 "tools.ozone.report.defs#reasonSexualDeepfake" 685 } 686 Self::ToolsOzoneReportDefsReasonSexualAnimal => { 687 "tools.ozone.report.defs#reasonSexualAnimal" 688 } 689 Self::ToolsOzoneReportDefsReasonSexualUnlabeled => { 690 "tools.ozone.report.defs#reasonSexualUnlabeled" 691 } 692 Self::ToolsOzoneReportDefsReasonSexualOther => { 693 "tools.ozone.report.defs#reasonSexualOther" 694 } 695 Self::ToolsOzoneReportDefsReasonChildSafetyCsam => { 696 "tools.ozone.report.defs#reasonChildSafetyCSAM" 697 } 698 Self::ToolsOzoneReportDefsReasonChildSafetyGroom => { 699 "tools.ozone.report.defs#reasonChildSafetyGroom" 700 } 701 Self::ToolsOzoneReportDefsReasonChildSafetyPrivacy => { 702 "tools.ozone.report.defs#reasonChildSafetyPrivacy" 703 } 704 Self::ToolsOzoneReportDefsReasonChildSafetyHarassment => { 705 "tools.ozone.report.defs#reasonChildSafetyHarassment" 706 } 707 Self::ToolsOzoneReportDefsReasonChildSafetyOther => { 708 "tools.ozone.report.defs#reasonChildSafetyOther" 709 } 710 Self::ToolsOzoneReportDefsReasonHarassmentTroll => { 711 "tools.ozone.report.defs#reasonHarassmentTroll" 712 } 713 Self::ToolsOzoneReportDefsReasonHarassmentTargeted => { 714 "tools.ozone.report.defs#reasonHarassmentTargeted" 715 } 716 Self::ToolsOzoneReportDefsReasonHarassmentHateSpeech => { 717 "tools.ozone.report.defs#reasonHarassmentHateSpeech" 718 } 719 Self::ToolsOzoneReportDefsReasonHarassmentDoxxing => { 720 "tools.ozone.report.defs#reasonHarassmentDoxxing" 721 } 722 Self::ToolsOzoneReportDefsReasonHarassmentOther => { 723 "tools.ozone.report.defs#reasonHarassmentOther" 724 } 725 Self::ToolsOzoneReportDefsReasonMisleadingBot => { 726 "tools.ozone.report.defs#reasonMisleadingBot" 727 } 728 Self::ToolsOzoneReportDefsReasonMisleadingImpersonation => { 729 "tools.ozone.report.defs#reasonMisleadingImpersonation" 730 } 731 Self::ToolsOzoneReportDefsReasonMisleadingSpam => { 732 "tools.ozone.report.defs#reasonMisleadingSpam" 733 } 734 Self::ToolsOzoneReportDefsReasonMisleadingScam => { 735 "tools.ozone.report.defs#reasonMisleadingScam" 736 } 737 Self::ToolsOzoneReportDefsReasonMisleadingElections => { 738 "tools.ozone.report.defs#reasonMisleadingElections" 739 } 740 Self::ToolsOzoneReportDefsReasonMisleadingOther => { 741 "tools.ozone.report.defs#reasonMisleadingOther" 742 } 743 Self::ToolsOzoneReportDefsReasonRuleSiteSecurity => { 744 "tools.ozone.report.defs#reasonRuleSiteSecurity" 745 } 746 Self::ToolsOzoneReportDefsReasonRuleProhibitedSales => { 747 "tools.ozone.report.defs#reasonRuleProhibitedSales" 748 } 749 Self::ToolsOzoneReportDefsReasonRuleBanEvasion => { 750 "tools.ozone.report.defs#reasonRuleBanEvasion" 751 } 752 Self::ToolsOzoneReportDefsReasonRuleOther => { 753 "tools.ozone.report.defs#reasonRuleOther" 754 } 755 Self::ToolsOzoneReportDefsReasonSelfHarmContent => { 756 "tools.ozone.report.defs#reasonSelfHarmContent" 757 } 758 Self::ToolsOzoneReportDefsReasonSelfHarmEd => { 759 "tools.ozone.report.defs#reasonSelfHarmED" 760 } 761 Self::ToolsOzoneReportDefsReasonSelfHarmStunts => { 762 "tools.ozone.report.defs#reasonSelfHarmStunts" 763 } 764 Self::ToolsOzoneReportDefsReasonSelfHarmSubstances => { 765 "tools.ozone.report.defs#reasonSelfHarmSubstances" 766 } 767 Self::ToolsOzoneReportDefsReasonSelfHarmOther => { 768 "tools.ozone.report.defs#reasonSelfHarmOther" 769 } 770 Self::Other(s) => s.as_ref(), 771 } 772 } 773} 774 775impl<'a> From<&'a str> for ReasonType<'a> { 776 fn from(s: &'a str) -> Self { 777 match s { 778 "tools.ozone.report.defs#reasonAppeal" => { 779 Self::ToolsOzoneReportDefsReasonAppeal 780 } 781 "tools.ozone.report.defs#reasonOther" => { 782 Self::ToolsOzoneReportDefsReasonOther 783 } 784 "tools.ozone.report.defs#reasonViolenceAnimal" => { 785 Self::ToolsOzoneReportDefsReasonViolenceAnimal 786 } 787 "tools.ozone.report.defs#reasonViolenceThreats" => { 788 Self::ToolsOzoneReportDefsReasonViolenceThreats 789 } 790 "tools.ozone.report.defs#reasonViolenceGraphicContent" => { 791 Self::ToolsOzoneReportDefsReasonViolenceGraphicContent 792 } 793 "tools.ozone.report.defs#reasonViolenceGlorification" => { 794 Self::ToolsOzoneReportDefsReasonViolenceGlorification 795 } 796 "tools.ozone.report.defs#reasonViolenceExtremistContent" => { 797 Self::ToolsOzoneReportDefsReasonViolenceExtremistContent 798 } 799 "tools.ozone.report.defs#reasonViolenceTrafficking" => { 800 Self::ToolsOzoneReportDefsReasonViolenceTrafficking 801 } 802 "tools.ozone.report.defs#reasonViolenceOther" => { 803 Self::ToolsOzoneReportDefsReasonViolenceOther 804 } 805 "tools.ozone.report.defs#reasonSexualAbuseContent" => { 806 Self::ToolsOzoneReportDefsReasonSexualAbuseContent 807 } 808 "tools.ozone.report.defs#reasonSexualNCII" => { 809 Self::ToolsOzoneReportDefsReasonSexualNcii 810 } 811 "tools.ozone.report.defs#reasonSexualDeepfake" => { 812 Self::ToolsOzoneReportDefsReasonSexualDeepfake 813 } 814 "tools.ozone.report.defs#reasonSexualAnimal" => { 815 Self::ToolsOzoneReportDefsReasonSexualAnimal 816 } 817 "tools.ozone.report.defs#reasonSexualUnlabeled" => { 818 Self::ToolsOzoneReportDefsReasonSexualUnlabeled 819 } 820 "tools.ozone.report.defs#reasonSexualOther" => { 821 Self::ToolsOzoneReportDefsReasonSexualOther 822 } 823 "tools.ozone.report.defs#reasonChildSafetyCSAM" => { 824 Self::ToolsOzoneReportDefsReasonChildSafetyCsam 825 } 826 "tools.ozone.report.defs#reasonChildSafetyGroom" => { 827 Self::ToolsOzoneReportDefsReasonChildSafetyGroom 828 } 829 "tools.ozone.report.defs#reasonChildSafetyPrivacy" => { 830 Self::ToolsOzoneReportDefsReasonChildSafetyPrivacy 831 } 832 "tools.ozone.report.defs#reasonChildSafetyHarassment" => { 833 Self::ToolsOzoneReportDefsReasonChildSafetyHarassment 834 } 835 "tools.ozone.report.defs#reasonChildSafetyOther" => { 836 Self::ToolsOzoneReportDefsReasonChildSafetyOther 837 } 838 "tools.ozone.report.defs#reasonHarassmentTroll" => { 839 Self::ToolsOzoneReportDefsReasonHarassmentTroll 840 } 841 "tools.ozone.report.defs#reasonHarassmentTargeted" => { 842 Self::ToolsOzoneReportDefsReasonHarassmentTargeted 843 } 844 "tools.ozone.report.defs#reasonHarassmentHateSpeech" => { 845 Self::ToolsOzoneReportDefsReasonHarassmentHateSpeech 846 } 847 "tools.ozone.report.defs#reasonHarassmentDoxxing" => { 848 Self::ToolsOzoneReportDefsReasonHarassmentDoxxing 849 } 850 "tools.ozone.report.defs#reasonHarassmentOther" => { 851 Self::ToolsOzoneReportDefsReasonHarassmentOther 852 } 853 "tools.ozone.report.defs#reasonMisleadingBot" => { 854 Self::ToolsOzoneReportDefsReasonMisleadingBot 855 } 856 "tools.ozone.report.defs#reasonMisleadingImpersonation" => { 857 Self::ToolsOzoneReportDefsReasonMisleadingImpersonation 858 } 859 "tools.ozone.report.defs#reasonMisleadingSpam" => { 860 Self::ToolsOzoneReportDefsReasonMisleadingSpam 861 } 862 "tools.ozone.report.defs#reasonMisleadingScam" => { 863 Self::ToolsOzoneReportDefsReasonMisleadingScam 864 } 865 "tools.ozone.report.defs#reasonMisleadingElections" => { 866 Self::ToolsOzoneReportDefsReasonMisleadingElections 867 } 868 "tools.ozone.report.defs#reasonMisleadingOther" => { 869 Self::ToolsOzoneReportDefsReasonMisleadingOther 870 } 871 "tools.ozone.report.defs#reasonRuleSiteSecurity" => { 872 Self::ToolsOzoneReportDefsReasonRuleSiteSecurity 873 } 874 "tools.ozone.report.defs#reasonRuleProhibitedSales" => { 875 Self::ToolsOzoneReportDefsReasonRuleProhibitedSales 876 } 877 "tools.ozone.report.defs#reasonRuleBanEvasion" => { 878 Self::ToolsOzoneReportDefsReasonRuleBanEvasion 879 } 880 "tools.ozone.report.defs#reasonRuleOther" => { 881 Self::ToolsOzoneReportDefsReasonRuleOther 882 } 883 "tools.ozone.report.defs#reasonSelfHarmContent" => { 884 Self::ToolsOzoneReportDefsReasonSelfHarmContent 885 } 886 "tools.ozone.report.defs#reasonSelfHarmED" => { 887 Self::ToolsOzoneReportDefsReasonSelfHarmEd 888 } 889 "tools.ozone.report.defs#reasonSelfHarmStunts" => { 890 Self::ToolsOzoneReportDefsReasonSelfHarmStunts 891 } 892 "tools.ozone.report.defs#reasonSelfHarmSubstances" => { 893 Self::ToolsOzoneReportDefsReasonSelfHarmSubstances 894 } 895 "tools.ozone.report.defs#reasonSelfHarmOther" => { 896 Self::ToolsOzoneReportDefsReasonSelfHarmOther 897 } 898 _ => Self::Other(jacquard_common::CowStr::from(s)), 899 } 900 } 901} 902 903impl<'a> From<String> for ReasonType<'a> { 904 fn from(s: String) -> Self { 905 match s.as_str() { 906 "tools.ozone.report.defs#reasonAppeal" => { 907 Self::ToolsOzoneReportDefsReasonAppeal 908 } 909 "tools.ozone.report.defs#reasonOther" => { 910 Self::ToolsOzoneReportDefsReasonOther 911 } 912 "tools.ozone.report.defs#reasonViolenceAnimal" => { 913 Self::ToolsOzoneReportDefsReasonViolenceAnimal 914 } 915 "tools.ozone.report.defs#reasonViolenceThreats" => { 916 Self::ToolsOzoneReportDefsReasonViolenceThreats 917 } 918 "tools.ozone.report.defs#reasonViolenceGraphicContent" => { 919 Self::ToolsOzoneReportDefsReasonViolenceGraphicContent 920 } 921 "tools.ozone.report.defs#reasonViolenceGlorification" => { 922 Self::ToolsOzoneReportDefsReasonViolenceGlorification 923 } 924 "tools.ozone.report.defs#reasonViolenceExtremistContent" => { 925 Self::ToolsOzoneReportDefsReasonViolenceExtremistContent 926 } 927 "tools.ozone.report.defs#reasonViolenceTrafficking" => { 928 Self::ToolsOzoneReportDefsReasonViolenceTrafficking 929 } 930 "tools.ozone.report.defs#reasonViolenceOther" => { 931 Self::ToolsOzoneReportDefsReasonViolenceOther 932 } 933 "tools.ozone.report.defs#reasonSexualAbuseContent" => { 934 Self::ToolsOzoneReportDefsReasonSexualAbuseContent 935 } 936 "tools.ozone.report.defs#reasonSexualNCII" => { 937 Self::ToolsOzoneReportDefsReasonSexualNcii 938 } 939 "tools.ozone.report.defs#reasonSexualDeepfake" => { 940 Self::ToolsOzoneReportDefsReasonSexualDeepfake 941 } 942 "tools.ozone.report.defs#reasonSexualAnimal" => { 943 Self::ToolsOzoneReportDefsReasonSexualAnimal 944 } 945 "tools.ozone.report.defs#reasonSexualUnlabeled" => { 946 Self::ToolsOzoneReportDefsReasonSexualUnlabeled 947 } 948 "tools.ozone.report.defs#reasonSexualOther" => { 949 Self::ToolsOzoneReportDefsReasonSexualOther 950 } 951 "tools.ozone.report.defs#reasonChildSafetyCSAM" => { 952 Self::ToolsOzoneReportDefsReasonChildSafetyCsam 953 } 954 "tools.ozone.report.defs#reasonChildSafetyGroom" => { 955 Self::ToolsOzoneReportDefsReasonChildSafetyGroom 956 } 957 "tools.ozone.report.defs#reasonChildSafetyPrivacy" => { 958 Self::ToolsOzoneReportDefsReasonChildSafetyPrivacy 959 } 960 "tools.ozone.report.defs#reasonChildSafetyHarassment" => { 961 Self::ToolsOzoneReportDefsReasonChildSafetyHarassment 962 } 963 "tools.ozone.report.defs#reasonChildSafetyOther" => { 964 Self::ToolsOzoneReportDefsReasonChildSafetyOther 965 } 966 "tools.ozone.report.defs#reasonHarassmentTroll" => { 967 Self::ToolsOzoneReportDefsReasonHarassmentTroll 968 } 969 "tools.ozone.report.defs#reasonHarassmentTargeted" => { 970 Self::ToolsOzoneReportDefsReasonHarassmentTargeted 971 } 972 "tools.ozone.report.defs#reasonHarassmentHateSpeech" => { 973 Self::ToolsOzoneReportDefsReasonHarassmentHateSpeech 974 } 975 "tools.ozone.report.defs#reasonHarassmentDoxxing" => { 976 Self::ToolsOzoneReportDefsReasonHarassmentDoxxing 977 } 978 "tools.ozone.report.defs#reasonHarassmentOther" => { 979 Self::ToolsOzoneReportDefsReasonHarassmentOther 980 } 981 "tools.ozone.report.defs#reasonMisleadingBot" => { 982 Self::ToolsOzoneReportDefsReasonMisleadingBot 983 } 984 "tools.ozone.report.defs#reasonMisleadingImpersonation" => { 985 Self::ToolsOzoneReportDefsReasonMisleadingImpersonation 986 } 987 "tools.ozone.report.defs#reasonMisleadingSpam" => { 988 Self::ToolsOzoneReportDefsReasonMisleadingSpam 989 } 990 "tools.ozone.report.defs#reasonMisleadingScam" => { 991 Self::ToolsOzoneReportDefsReasonMisleadingScam 992 } 993 "tools.ozone.report.defs#reasonMisleadingElections" => { 994 Self::ToolsOzoneReportDefsReasonMisleadingElections 995 } 996 "tools.ozone.report.defs#reasonMisleadingOther" => { 997 Self::ToolsOzoneReportDefsReasonMisleadingOther 998 } 999 "tools.ozone.report.defs#reasonRuleSiteSecurity" => { 1000 Self::ToolsOzoneReportDefsReasonRuleSiteSecurity 1001 } 1002 "tools.ozone.report.defs#reasonRuleProhibitedSales" => { 1003 Self::ToolsOzoneReportDefsReasonRuleProhibitedSales 1004 } 1005 "tools.ozone.report.defs#reasonRuleBanEvasion" => { 1006 Self::ToolsOzoneReportDefsReasonRuleBanEvasion 1007 } 1008 "tools.ozone.report.defs#reasonRuleOther" => { 1009 Self::ToolsOzoneReportDefsReasonRuleOther 1010 } 1011 "tools.ozone.report.defs#reasonSelfHarmContent" => { 1012 Self::ToolsOzoneReportDefsReasonSelfHarmContent 1013 } 1014 "tools.ozone.report.defs#reasonSelfHarmED" => { 1015 Self::ToolsOzoneReportDefsReasonSelfHarmEd 1016 } 1017 "tools.ozone.report.defs#reasonSelfHarmStunts" => { 1018 Self::ToolsOzoneReportDefsReasonSelfHarmStunts 1019 } 1020 "tools.ozone.report.defs#reasonSelfHarmSubstances" => { 1021 Self::ToolsOzoneReportDefsReasonSelfHarmSubstances 1022 } 1023 "tools.ozone.report.defs#reasonSelfHarmOther" => { 1024 Self::ToolsOzoneReportDefsReasonSelfHarmOther 1025 } 1026 _ => Self::Other(jacquard_common::CowStr::from(s)), 1027 } 1028 } 1029} 1030 1031impl<'a> AsRef<str> for ReasonType<'a> { 1032 fn as_ref(&self) -> &str { 1033 self.as_str() 1034 } 1035} 1036 1037impl<'a> serde::Serialize for ReasonType<'a> { 1038 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> 1039 where 1040 S: serde::Serializer, 1041 { 1042 serializer.serialize_str(self.as_str()) 1043 } 1044} 1045 1046impl<'de, 'a> serde::Deserialize<'de> for ReasonType<'a> 1047where 1048 'de: 'a, 1049{ 1050 fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> 1051 where 1052 D: serde::Deserializer<'de>, 1053 { 1054 let s = <&'de str>::deserialize(deserializer)?; 1055 Ok(Self::from(s)) 1056 } 1057} 1058 1059impl jacquard_common::IntoStatic for ReasonType<'_> { 1060 type Output = ReasonType<'static>; 1061 fn into_static(self) -> Self::Output { 1062 match self { 1063 ReasonType::ToolsOzoneReportDefsReasonAppeal => { 1064 ReasonType::ToolsOzoneReportDefsReasonAppeal 1065 } 1066 ReasonType::ToolsOzoneReportDefsReasonOther => { 1067 ReasonType::ToolsOzoneReportDefsReasonOther 1068 } 1069 ReasonType::ToolsOzoneReportDefsReasonViolenceAnimal => { 1070 ReasonType::ToolsOzoneReportDefsReasonViolenceAnimal 1071 } 1072 ReasonType::ToolsOzoneReportDefsReasonViolenceThreats => { 1073 ReasonType::ToolsOzoneReportDefsReasonViolenceThreats 1074 } 1075 ReasonType::ToolsOzoneReportDefsReasonViolenceGraphicContent => { 1076 ReasonType::ToolsOzoneReportDefsReasonViolenceGraphicContent 1077 } 1078 ReasonType::ToolsOzoneReportDefsReasonViolenceGlorification => { 1079 ReasonType::ToolsOzoneReportDefsReasonViolenceGlorification 1080 } 1081 ReasonType::ToolsOzoneReportDefsReasonViolenceExtremistContent => { 1082 ReasonType::ToolsOzoneReportDefsReasonViolenceExtremistContent 1083 } 1084 ReasonType::ToolsOzoneReportDefsReasonViolenceTrafficking => { 1085 ReasonType::ToolsOzoneReportDefsReasonViolenceTrafficking 1086 } 1087 ReasonType::ToolsOzoneReportDefsReasonViolenceOther => { 1088 ReasonType::ToolsOzoneReportDefsReasonViolenceOther 1089 } 1090 ReasonType::ToolsOzoneReportDefsReasonSexualAbuseContent => { 1091 ReasonType::ToolsOzoneReportDefsReasonSexualAbuseContent 1092 } 1093 ReasonType::ToolsOzoneReportDefsReasonSexualNcii => { 1094 ReasonType::ToolsOzoneReportDefsReasonSexualNcii 1095 } 1096 ReasonType::ToolsOzoneReportDefsReasonSexualDeepfake => { 1097 ReasonType::ToolsOzoneReportDefsReasonSexualDeepfake 1098 } 1099 ReasonType::ToolsOzoneReportDefsReasonSexualAnimal => { 1100 ReasonType::ToolsOzoneReportDefsReasonSexualAnimal 1101 } 1102 ReasonType::ToolsOzoneReportDefsReasonSexualUnlabeled => { 1103 ReasonType::ToolsOzoneReportDefsReasonSexualUnlabeled 1104 } 1105 ReasonType::ToolsOzoneReportDefsReasonSexualOther => { 1106 ReasonType::ToolsOzoneReportDefsReasonSexualOther 1107 } 1108 ReasonType::ToolsOzoneReportDefsReasonChildSafetyCsam => { 1109 ReasonType::ToolsOzoneReportDefsReasonChildSafetyCsam 1110 } 1111 ReasonType::ToolsOzoneReportDefsReasonChildSafetyGroom => { 1112 ReasonType::ToolsOzoneReportDefsReasonChildSafetyGroom 1113 } 1114 ReasonType::ToolsOzoneReportDefsReasonChildSafetyPrivacy => { 1115 ReasonType::ToolsOzoneReportDefsReasonChildSafetyPrivacy 1116 } 1117 ReasonType::ToolsOzoneReportDefsReasonChildSafetyHarassment => { 1118 ReasonType::ToolsOzoneReportDefsReasonChildSafetyHarassment 1119 } 1120 ReasonType::ToolsOzoneReportDefsReasonChildSafetyOther => { 1121 ReasonType::ToolsOzoneReportDefsReasonChildSafetyOther 1122 } 1123 ReasonType::ToolsOzoneReportDefsReasonHarassmentTroll => { 1124 ReasonType::ToolsOzoneReportDefsReasonHarassmentTroll 1125 } 1126 ReasonType::ToolsOzoneReportDefsReasonHarassmentTargeted => { 1127 ReasonType::ToolsOzoneReportDefsReasonHarassmentTargeted 1128 } 1129 ReasonType::ToolsOzoneReportDefsReasonHarassmentHateSpeech => { 1130 ReasonType::ToolsOzoneReportDefsReasonHarassmentHateSpeech 1131 } 1132 ReasonType::ToolsOzoneReportDefsReasonHarassmentDoxxing => { 1133 ReasonType::ToolsOzoneReportDefsReasonHarassmentDoxxing 1134 } 1135 ReasonType::ToolsOzoneReportDefsReasonHarassmentOther => { 1136 ReasonType::ToolsOzoneReportDefsReasonHarassmentOther 1137 } 1138 ReasonType::ToolsOzoneReportDefsReasonMisleadingBot => { 1139 ReasonType::ToolsOzoneReportDefsReasonMisleadingBot 1140 } 1141 ReasonType::ToolsOzoneReportDefsReasonMisleadingImpersonation => { 1142 ReasonType::ToolsOzoneReportDefsReasonMisleadingImpersonation 1143 } 1144 ReasonType::ToolsOzoneReportDefsReasonMisleadingSpam => { 1145 ReasonType::ToolsOzoneReportDefsReasonMisleadingSpam 1146 } 1147 ReasonType::ToolsOzoneReportDefsReasonMisleadingScam => { 1148 ReasonType::ToolsOzoneReportDefsReasonMisleadingScam 1149 } 1150 ReasonType::ToolsOzoneReportDefsReasonMisleadingElections => { 1151 ReasonType::ToolsOzoneReportDefsReasonMisleadingElections 1152 } 1153 ReasonType::ToolsOzoneReportDefsReasonMisleadingOther => { 1154 ReasonType::ToolsOzoneReportDefsReasonMisleadingOther 1155 } 1156 ReasonType::ToolsOzoneReportDefsReasonRuleSiteSecurity => { 1157 ReasonType::ToolsOzoneReportDefsReasonRuleSiteSecurity 1158 } 1159 ReasonType::ToolsOzoneReportDefsReasonRuleProhibitedSales => { 1160 ReasonType::ToolsOzoneReportDefsReasonRuleProhibitedSales 1161 } 1162 ReasonType::ToolsOzoneReportDefsReasonRuleBanEvasion => { 1163 ReasonType::ToolsOzoneReportDefsReasonRuleBanEvasion 1164 } 1165 ReasonType::ToolsOzoneReportDefsReasonRuleOther => { 1166 ReasonType::ToolsOzoneReportDefsReasonRuleOther 1167 } 1168 ReasonType::ToolsOzoneReportDefsReasonSelfHarmContent => { 1169 ReasonType::ToolsOzoneReportDefsReasonSelfHarmContent 1170 } 1171 ReasonType::ToolsOzoneReportDefsReasonSelfHarmEd => { 1172 ReasonType::ToolsOzoneReportDefsReasonSelfHarmEd 1173 } 1174 ReasonType::ToolsOzoneReportDefsReasonSelfHarmStunts => { 1175 ReasonType::ToolsOzoneReportDefsReasonSelfHarmStunts 1176 } 1177 ReasonType::ToolsOzoneReportDefsReasonSelfHarmSubstances => { 1178 ReasonType::ToolsOzoneReportDefsReasonSelfHarmSubstances 1179 } 1180 ReasonType::ToolsOzoneReportDefsReasonSelfHarmOther => { 1181 ReasonType::ToolsOzoneReportDefsReasonSelfHarmOther 1182 } 1183 ReasonType::Other(v) => ReasonType::Other(v.into_static()), 1184 } 1185 } 1186} 1187 1188/// Animal welfare violations 1189#[derive( 1190 serde::Serialize, 1191 serde::Deserialize, 1192 Debug, 1193 Clone, 1194 PartialEq, 1195 Eq, 1196 Hash, 1197 jacquard_derive::IntoStatic 1198)] 1199pub struct ReasonViolenceAnimal; 1200impl std::fmt::Display for ReasonViolenceAnimal { 1201 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 1202 write!(f, "reasonViolenceAnimal") 1203 } 1204} 1205 1206/// Extremist content. These reports will be sent only be sent to the application's Moderation Authority. 1207#[derive( 1208 serde::Serialize, 1209 serde::Deserialize, 1210 Debug, 1211 Clone, 1212 PartialEq, 1213 Eq, 1214 Hash, 1215 jacquard_derive::IntoStatic 1216)] 1217pub struct ReasonViolenceExtremistContent; 1218impl std::fmt::Display for ReasonViolenceExtremistContent { 1219 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 1220 write!(f, "reasonViolenceExtremistContent") 1221 } 1222} 1223 1224/// Glorification of violence 1225#[derive( 1226 serde::Serialize, 1227 serde::Deserialize, 1228 Debug, 1229 Clone, 1230 PartialEq, 1231 Eq, 1232 Hash, 1233 jacquard_derive::IntoStatic 1234)] 1235pub struct ReasonViolenceGlorification; 1236impl std::fmt::Display for ReasonViolenceGlorification { 1237 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 1238 write!(f, "reasonViolenceGlorification") 1239 } 1240} 1241 1242/// Graphic violent content 1243#[derive( 1244 serde::Serialize, 1245 serde::Deserialize, 1246 Debug, 1247 Clone, 1248 PartialEq, 1249 Eq, 1250 Hash, 1251 jacquard_derive::IntoStatic 1252)] 1253pub struct ReasonViolenceGraphicContent; 1254impl std::fmt::Display for ReasonViolenceGraphicContent { 1255 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 1256 write!(f, "reasonViolenceGraphicContent") 1257 } 1258} 1259 1260/// Other violent content 1261#[derive( 1262 serde::Serialize, 1263 serde::Deserialize, 1264 Debug, 1265 Clone, 1266 PartialEq, 1267 Eq, 1268 Hash, 1269 jacquard_derive::IntoStatic 1270)] 1271pub struct ReasonViolenceOther; 1272impl std::fmt::Display for ReasonViolenceOther { 1273 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 1274 write!(f, "reasonViolenceOther") 1275 } 1276} 1277 1278/// Threats or incitement 1279#[derive( 1280 serde::Serialize, 1281 serde::Deserialize, 1282 Debug, 1283 Clone, 1284 PartialEq, 1285 Eq, 1286 Hash, 1287 jacquard_derive::IntoStatic 1288)] 1289pub struct ReasonViolenceThreats; 1290impl std::fmt::Display for ReasonViolenceThreats { 1291 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 1292 write!(f, "reasonViolenceThreats") 1293 } 1294} 1295 1296/// Human trafficking 1297#[derive( 1298 serde::Serialize, 1299 serde::Deserialize, 1300 Debug, 1301 Clone, 1302 PartialEq, 1303 Eq, 1304 Hash, 1305 jacquard_derive::IntoStatic 1306)] 1307pub struct ReasonViolenceTrafficking; 1308impl std::fmt::Display for ReasonViolenceTrafficking { 1309 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 1310 write!(f, "reasonViolenceTrafficking") 1311 } 1312}