1#![allow(non_camel_case_types)]
2
3#[cfg_attr(feature = "specta", derive(specta::Type))]
4#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Copy, Hash)]
6pub enum Currency {
7 UaeDirham,
9 Afghani,
11 Lek,
13 ArmenianDram,
15 NetherlandsAntilleanGuilder,
17 Kwanza,
19 ArgentinePeso,
21 AustralianDollar,
23 ArubanFlorin,
25 AzerbaijanManat,
27 ConvertibleMark,
29 BarbadosDollar,
31 Taka,
33 BulgarianLev,
35 BahrainiDinar,
37 BurundiFranc,
39 BermudianDollar,
41 BruneiDollar,
43 Boliviano,
45 Mvdol,
47 BrazilianReal,
49 BahamianDollar,
51 Ngultrum,
53 Pula,
55 BelarusianRuble,
57 BelizeDollar,
59 CanadianDollar,
61 CongoleseFranc,
63 WirEuro,
65 SwissFranc,
67 WirFranc,
69 UnidadDeFomento,
71 ChileanPeso,
73 YuanRenminbi,
75 ColombianPeso,
77 UnidadDeValorReal,
79 CostaRicanColon,
81 PesoConvertible,
83 CubanPeso,
85 CaboVerdeEscudo,
87 CzechKoruna,
89 DjiboutiFranc,
91 DanishKrone,
93 DominicanPeso,
95 AlgerianDinar,
97 EgyptianPound,
99 Nakfa,
101 EthiopianBirr,
103 Euro,
105 FijiDollar,
107 FalklandIslandsPound,
109 PoundSterling,
111 Lari,
113 GhanaCedi,
115 GibraltarPound,
117 Dalasi,
119 GuineanFranc,
121 Quetzal,
123 GuyanaDollar,
125 HongKongDollar,
127 Lempira,
129 Gourde,
131 Forint,
133 Rupiah,
135 NewIsraeliSheqel,
137 IndianRupee,
139 IraqiDinar,
141 IranianRial,
143 IcelandKrona,
145 JamaicanDollar,
147 JordanianDinar,
149 Yen,
151 KenyanShilling,
153 Som,
155 Riel,
157 ComorianFranc,
159 NorthKoreanWon,
161 Won,
163 KuwaitiDinar,
165 CaymanIslandsDollar,
167 Tenge,
169 LaoKip,
171 LebanesePound,
173 SriLankaRupee,
175 LiberianDollar,
177 Loti,
179 LibyanDinar,
181 MoroccanDirham,
183 MoldovanLeu,
185 MalagasyAriary,
187 Denar,
189 Kyat,
191 Tugrik,
193 Pataca,
195 Ouguiya,
197 MauritiusRupee,
199 Rufiyaa,
201 MalawiKwacha,
203 MexicanPeso,
205 MexicanUnidadDeInversionUdi,
207 MalaysianRinggit,
209 MozambiqueMetical,
211 NamibiaDollar,
213 Naira,
215 CordobaOro,
217 NorwegianKrone,
219 NepaleseRupee,
221 NewZealandDollar,
223 RialOmani,
225 Balboa,
227 Sol,
229 Kina,
231 PhilippinePeso,
233 PakistanRupee,
235 Zloty,
237 Guarani,
239 QatariRial,
241 RomanianLeu,
243 SerbianDinar,
245 RussianRuble,
247 RwandaFranc,
249 SaudiRiyal,
251 SolomonIslandsDollar,
253 SeychellesRupee,
255 SudanesePound,
257 SwedishKrona,
259 SingaporeDollar,
261 SaintHelenaPound,
263 SierraLeoneNewValuation2022,
265 SomaliShilling,
267 SurinamDollar,
269 SouthSudanesePound,
271 Dobra,
273 ElSalvadorColon,
275 SyrianPound,
277 Lilangeni,
279 Baht,
281 Somoni,
283 TurkmenistanNewManat,
285 TunisianDinar,
287 PaAnga,
289 TurkishLira,
291 TrinidadAndTobagoDollar,
293 NewTaiwanDollar,
295 TanzanianShilling,
297 Hryvnia,
299 UgandaShilling,
301 UsDollar,
303 UsDollarNextDay,
305 UruguayPesoEnUnidadesIndexadasUi,
307 PesoUruguayo,
309 UnidadPrevisional,
311 UzbekistanSum,
313 BolívarSoberanoNewValuation,
315 BolívarSoberano,
317 Dong,
319 Vatu,
321 Tala,
323 CfaFrancBeac,
325 Silver,
327 Gold,
329 BondMarketsUnitEuropeanCompositeUnitEurco,
331 BondMarketsUnitEuropeanMonetaryUnitEMU6,
333 BondMarketsUnitEuropeanUnitAccount9EUA9,
335 BondMarketsUnitEuropeanUnitAccount17EUA17,
337 EastCaribbeanDollar,
339 SdrSpecialDrawingRight,
341 CfaFrancBceao,
343 Palladium,
345 CfpFranc,
347 Platinum,
349 Sucre,
351 CodesSpecificallyReservedForTestingPurposes,
353 AdbUnitAccount,
355 TheCodesAssignedForTransactionsWhereNoCurrencyIsInvolved,
357 YemeniRial,
359 Rand,
361 ZambianKwacha,
363 ZimbabweGold,
365 ZimbabweDollar,
367}
368
369impl std::fmt::Display for Currency {
370 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
371 write!(f, "{}", <Self as crate::Code>::code(*self))
372 }
373}
374
375impl std::str::FromStr for Currency {
376 type Err = crate::ParseError<Self>;
377 fn from_str(s: &str) -> Result<Self, Self::Err> {
378 <Self as crate::FromCode>::from_code(s)
379 .ok_or_else(|| crate::ParseError::<Self>::new(s.to_owned()))
380 }
381}
382
383impl crate::Code for Currency {
384 fn code(self) -> &'static str {
385 match self {
386 Currency::UaeDirham => "AED",
387 Currency::Afghani => "AFN",
388 Currency::Lek => "ALL",
389 Currency::ArmenianDram => "AMD",
390 Currency::NetherlandsAntilleanGuilder => "ANG",
391 Currency::Kwanza => "AOA",
392 Currency::ArgentinePeso => "ARS",
393 Currency::AustralianDollar => "AUD",
394 Currency::ArubanFlorin => "AWG",
395 Currency::AzerbaijanManat => "AZN",
396 Currency::ConvertibleMark => "BAM",
397 Currency::BarbadosDollar => "BBD",
398 Currency::Taka => "BDT",
399 Currency::BulgarianLev => "BGN",
400 Currency::BahrainiDinar => "BHD",
401 Currency::BurundiFranc => "BIF",
402 Currency::BermudianDollar => "BMD",
403 Currency::BruneiDollar => "BND",
404 Currency::Boliviano => "BOB",
405 Currency::Mvdol => "BOV",
406 Currency::BrazilianReal => "BRL",
407 Currency::BahamianDollar => "BSD",
408 Currency::Ngultrum => "BTN",
409 Currency::Pula => "BWP",
410 Currency::BelarusianRuble => "BYN",
411 Currency::BelizeDollar => "BZD",
412 Currency::CanadianDollar => "CAD",
413 Currency::CongoleseFranc => "CDF",
414 Currency::WirEuro => "CHE",
415 Currency::SwissFranc => "CHF",
416 Currency::WirFranc => "CHW",
417 Currency::UnidadDeFomento => "CLF",
418 Currency::ChileanPeso => "CLP",
419 Currency::YuanRenminbi => "CNY",
420 Currency::ColombianPeso => "COP",
421 Currency::UnidadDeValorReal => "COU",
422 Currency::CostaRicanColon => "CRC",
423 Currency::PesoConvertible => "CUC",
424 Currency::CubanPeso => "CUP",
425 Currency::CaboVerdeEscudo => "CVE",
426 Currency::CzechKoruna => "CZK",
427 Currency::DjiboutiFranc => "DJF",
428 Currency::DanishKrone => "DKK",
429 Currency::DominicanPeso => "DOP",
430 Currency::AlgerianDinar => "DZD",
431 Currency::EgyptianPound => "EGP",
432 Currency::Nakfa => "ERN",
433 Currency::EthiopianBirr => "ETB",
434 Currency::Euro => "EUR",
435 Currency::FijiDollar => "FJD",
436 Currency::FalklandIslandsPound => "FKP",
437 Currency::PoundSterling => "GBP",
438 Currency::Lari => "GEL",
439 Currency::GhanaCedi => "GHS",
440 Currency::GibraltarPound => "GIP",
441 Currency::Dalasi => "GMD",
442 Currency::GuineanFranc => "GNF",
443 Currency::Quetzal => "GTQ",
444 Currency::GuyanaDollar => "GYD",
445 Currency::HongKongDollar => "HKD",
446 Currency::Lempira => "HNL",
447 Currency::Gourde => "HTG",
448 Currency::Forint => "HUF",
449 Currency::Rupiah => "IDR",
450 Currency::NewIsraeliSheqel => "ILS",
451 Currency::IndianRupee => "INR",
452 Currency::IraqiDinar => "IQD",
453 Currency::IranianRial => "IRR",
454 Currency::IcelandKrona => "ISK",
455 Currency::JamaicanDollar => "JMD",
456 Currency::JordanianDinar => "JOD",
457 Currency::Yen => "JPY",
458 Currency::KenyanShilling => "KES",
459 Currency::Som => "KGS",
460 Currency::Riel => "KHR",
461 Currency::ComorianFranc => "KMF",
462 Currency::NorthKoreanWon => "KPW",
463 Currency::Won => "KRW",
464 Currency::KuwaitiDinar => "KWD",
465 Currency::CaymanIslandsDollar => "KYD",
466 Currency::Tenge => "KZT",
467 Currency::LaoKip => "LAK",
468 Currency::LebanesePound => "LBP",
469 Currency::SriLankaRupee => "LKR",
470 Currency::LiberianDollar => "LRD",
471 Currency::Loti => "LSL",
472 Currency::LibyanDinar => "LYD",
473 Currency::MoroccanDirham => "MAD",
474 Currency::MoldovanLeu => "MDL",
475 Currency::MalagasyAriary => "MGA",
476 Currency::Denar => "MKD",
477 Currency::Kyat => "MMK",
478 Currency::Tugrik => "MNT",
479 Currency::Pataca => "MOP",
480 Currency::Ouguiya => "MRU",
481 Currency::MauritiusRupee => "MUR",
482 Currency::Rufiyaa => "MVR",
483 Currency::MalawiKwacha => "MWK",
484 Currency::MexicanPeso => "MXN",
485 Currency::MexicanUnidadDeInversionUdi => "MXV",
486 Currency::MalaysianRinggit => "MYR",
487 Currency::MozambiqueMetical => "MZN",
488 Currency::NamibiaDollar => "NAD",
489 Currency::Naira => "NGN",
490 Currency::CordobaOro => "NIO",
491 Currency::NorwegianKrone => "NOK",
492 Currency::NepaleseRupee => "NPR",
493 Currency::NewZealandDollar => "NZD",
494 Currency::RialOmani => "OMR",
495 Currency::Balboa => "PAB",
496 Currency::Sol => "PEN",
497 Currency::Kina => "PGK",
498 Currency::PhilippinePeso => "PHP",
499 Currency::PakistanRupee => "PKR",
500 Currency::Zloty => "PLN",
501 Currency::Guarani => "PYG",
502 Currency::QatariRial => "QAR",
503 Currency::RomanianLeu => "RON",
504 Currency::SerbianDinar => "RSD",
505 Currency::RussianRuble => "RUB",
506 Currency::RwandaFranc => "RWF",
507 Currency::SaudiRiyal => "SAR",
508 Currency::SolomonIslandsDollar => "SBD",
509 Currency::SeychellesRupee => "SCR",
510 Currency::SudanesePound => "SDG",
511 Currency::SwedishKrona => "SEK",
512 Currency::SingaporeDollar => "SGD",
513 Currency::SaintHelenaPound => "SHP",
514 Currency::SierraLeoneNewValuation2022 => "SLE",
515 Currency::SomaliShilling => "SOS",
516 Currency::SurinamDollar => "SRD",
517 Currency::SouthSudanesePound => "SSP",
518 Currency::Dobra => "STN",
519 Currency::ElSalvadorColon => "SVC",
520 Currency::SyrianPound => "SYP",
521 Currency::Lilangeni => "SZL",
522 Currency::Baht => "THB",
523 Currency::Somoni => "TJS",
524 Currency::TurkmenistanNewManat => "TMT",
525 Currency::TunisianDinar => "TND",
526 Currency::PaAnga => "TOP",
527 Currency::TurkishLira => "TRY",
528 Currency::TrinidadAndTobagoDollar => "TTD",
529 Currency::NewTaiwanDollar => "TWD",
530 Currency::TanzanianShilling => "TZS",
531 Currency::Hryvnia => "UAH",
532 Currency::UgandaShilling => "UGX",
533 Currency::UsDollar => "USD",
534 Currency::UsDollarNextDay => "USN",
535 Currency::UruguayPesoEnUnidadesIndexadasUi => "UYI",
536 Currency::PesoUruguayo => "UYU",
537 Currency::UnidadPrevisional => "UYW",
538 Currency::UzbekistanSum => "UZS",
539 Currency::BolívarSoberanoNewValuation => "VED",
540 Currency::BolívarSoberano => "VES",
541 Currency::Dong => "VND",
542 Currency::Vatu => "VUV",
543 Currency::Tala => "WST",
544 Currency::CfaFrancBeac => "XAF",
545 Currency::Silver => "XAG",
546 Currency::Gold => "XAU",
547 Currency::BondMarketsUnitEuropeanCompositeUnitEurco => "XBA",
548 Currency::BondMarketsUnitEuropeanMonetaryUnitEMU6 => "XBB",
549 Currency::BondMarketsUnitEuropeanUnitAccount9EUA9 => "XBC",
550 Currency::BondMarketsUnitEuropeanUnitAccount17EUA17 => "XBD",
551 Currency::EastCaribbeanDollar => "XCD",
552 Currency::SdrSpecialDrawingRight => "XDR",
553 Currency::CfaFrancBceao => "XOF",
554 Currency::Palladium => "XPD",
555 Currency::CfpFranc => "XPF",
556 Currency::Platinum => "XPT",
557 Currency::Sucre => "XSU",
558 Currency::CodesSpecificallyReservedForTestingPurposes => "XTS",
559 Currency::AdbUnitAccount => "XUA",
560 Currency::TheCodesAssignedForTransactionsWhereNoCurrencyIsInvolved => "XXX",
561 Currency::YemeniRial => "YER",
562 Currency::Rand => "ZAR",
563 Currency::ZambianKwacha => "ZMW",
564 Currency::ZimbabweGold => "ZWG",
565 Currency::ZimbabweDollar => "ZWL",
566 }
567 }
568}
569
570impl crate::Description for Currency {
571 fn description(self) -> &'static str {
572 match self {
573 Currency::UaeDirham => "UAE Dirham",
574 Currency::Afghani => "Afghani",
575 Currency::Lek => "Lek",
576 Currency::ArmenianDram => "Armenian Dram",
577 Currency::NetherlandsAntilleanGuilder => "Netherlands Antillean Guilder",
578 Currency::Kwanza => "Kwanza",
579 Currency::ArgentinePeso => "Argentine Peso",
580 Currency::AustralianDollar => "Australian Dollar",
581 Currency::ArubanFlorin => "Aruban Florin",
582 Currency::AzerbaijanManat => "Azerbaijan Manat",
583 Currency::ConvertibleMark => "Convertible Mark",
584 Currency::BarbadosDollar => "Barbados Dollar",
585 Currency::Taka => "Taka",
586 Currency::BulgarianLev => "Bulgarian Lev",
587 Currency::BahrainiDinar => "Bahraini Dinar",
588 Currency::BurundiFranc => "Burundi Franc",
589 Currency::BermudianDollar => "Bermudian Dollar",
590 Currency::BruneiDollar => "Brunei Dollar",
591 Currency::Boliviano => "Boliviano",
592 Currency::Mvdol => "Mvdol",
593 Currency::BrazilianReal => "Brazilian Real",
594 Currency::BahamianDollar => "Bahamian Dollar",
595 Currency::Ngultrum => "Ngultrum",
596 Currency::Pula => "Pula",
597 Currency::BelarusianRuble => "Belarusian Ruble",
598 Currency::BelizeDollar => "Belize Dollar",
599 Currency::CanadianDollar => "Canadian Dollar",
600 Currency::CongoleseFranc => "Congolese Franc",
601 Currency::WirEuro => "WIR Euro",
602 Currency::SwissFranc => "Swiss Franc",
603 Currency::WirFranc => "WIR Franc",
604 Currency::UnidadDeFomento => "Unidad de Fomento",
605 Currency::ChileanPeso => "Chilean Peso",
606 Currency::YuanRenminbi => "Yuan Renminbi",
607 Currency::ColombianPeso => "Colombian Peso",
608 Currency::UnidadDeValorReal => "Unidad de Valor Real",
609 Currency::CostaRicanColon => "Costa Rican Colon",
610 Currency::PesoConvertible => "Peso Convertible",
611 Currency::CubanPeso => "Cuban Peso",
612 Currency::CaboVerdeEscudo => "Cabo Verde Escudo",
613 Currency::CzechKoruna => "Czech Koruna",
614 Currency::DjiboutiFranc => "Djibouti Franc",
615 Currency::DanishKrone => "Danish Krone",
616 Currency::DominicanPeso => "Dominican Peso",
617 Currency::AlgerianDinar => "Algerian Dinar",
618 Currency::EgyptianPound => "Egyptian Pound",
619 Currency::Nakfa => "Nakfa",
620 Currency::EthiopianBirr => "Ethiopian Birr",
621 Currency::Euro => "Euro",
622 Currency::FijiDollar => "Fiji Dollar",
623 Currency::FalklandIslandsPound => "Falkland Islands Pound",
624 Currency::PoundSterling => "Pound Sterling",
625 Currency::Lari => "Lari",
626 Currency::GhanaCedi => "Ghana Cedi",
627 Currency::GibraltarPound => "Gibraltar Pound",
628 Currency::Dalasi => "Dalasi",
629 Currency::GuineanFranc => "Guinean Franc",
630 Currency::Quetzal => "Quetzal",
631 Currency::GuyanaDollar => "Guyana Dollar",
632 Currency::HongKongDollar => "Hong Kong Dollar",
633 Currency::Lempira => "Lempira",
634 Currency::Gourde => "Gourde",
635 Currency::Forint => "Forint",
636 Currency::Rupiah => "Rupiah",
637 Currency::NewIsraeliSheqel => "New Israeli Sheqel",
638 Currency::IndianRupee => "Indian Rupee",
639 Currency::IraqiDinar => "Iraqi Dinar",
640 Currency::IranianRial => "Iranian Rial",
641 Currency::IcelandKrona => "Iceland Krona",
642 Currency::JamaicanDollar => "Jamaican Dollar",
643 Currency::JordanianDinar => "Jordanian Dinar",
644 Currency::Yen => "Yen",
645 Currency::KenyanShilling => "Kenyan Shilling",
646 Currency::Som => "Som",
647 Currency::Riel => "Riel",
648 Currency::ComorianFranc => "Comorian Franc ",
649 Currency::NorthKoreanWon => "North Korean Won",
650 Currency::Won => "Won",
651 Currency::KuwaitiDinar => "Kuwaiti Dinar",
652 Currency::CaymanIslandsDollar => "Cayman Islands Dollar",
653 Currency::Tenge => "Tenge",
654 Currency::LaoKip => "Lao Kip",
655 Currency::LebanesePound => "Lebanese Pound",
656 Currency::SriLankaRupee => "Sri Lanka Rupee",
657 Currency::LiberianDollar => "Liberian Dollar",
658 Currency::Loti => "Loti",
659 Currency::LibyanDinar => "Libyan Dinar",
660 Currency::MoroccanDirham => "Moroccan Dirham",
661 Currency::MoldovanLeu => "Moldovan Leu",
662 Currency::MalagasyAriary => "Malagasy Ariary",
663 Currency::Denar => "Denar",
664 Currency::Kyat => "Kyat",
665 Currency::Tugrik => "Tugrik",
666 Currency::Pataca => "Pataca",
667 Currency::Ouguiya => "Ouguiya",
668 Currency::MauritiusRupee => "Mauritius Rupee",
669 Currency::Rufiyaa => "Rufiyaa",
670 Currency::MalawiKwacha => "Malawi Kwacha",
671 Currency::MexicanPeso => "Mexican Peso",
672 Currency::MexicanUnidadDeInversionUdi => "Mexican Unidad de Inversion (UDI)",
673 Currency::MalaysianRinggit => "Malaysian Ringgit",
674 Currency::MozambiqueMetical => "Mozambique Metical",
675 Currency::NamibiaDollar => "Namibia Dollar",
676 Currency::Naira => "Naira",
677 Currency::CordobaOro => "Cordoba Oro",
678 Currency::NorwegianKrone => "Norwegian Krone",
679 Currency::NepaleseRupee => "Nepalese Rupee",
680 Currency::NewZealandDollar => "New Zealand Dollar",
681 Currency::RialOmani => "Rial Omani",
682 Currency::Balboa => "Balboa",
683 Currency::Sol => "Sol",
684 Currency::Kina => "Kina",
685 Currency::PhilippinePeso => "Philippine Peso",
686 Currency::PakistanRupee => "Pakistan Rupee",
687 Currency::Zloty => "Zloty",
688 Currency::Guarani => "Guarani",
689 Currency::QatariRial => "Qatari Rial",
690 Currency::RomanianLeu => "Romanian Leu",
691 Currency::SerbianDinar => "Serbian Dinar",
692 Currency::RussianRuble => "Russian Ruble",
693 Currency::RwandaFranc => "Rwanda Franc",
694 Currency::SaudiRiyal => "Saudi Riyal",
695 Currency::SolomonIslandsDollar => "Solomon Islands Dollar",
696 Currency::SeychellesRupee => "Seychelles Rupee",
697 Currency::SudanesePound => "Sudanese Pound",
698 Currency::SwedishKrona => "Swedish Krona",
699 Currency::SingaporeDollar => "Singapore Dollar",
700 Currency::SaintHelenaPound => "Saint Helena Pound",
701 Currency::SierraLeoneNewValuation2022 => "Sierra Leone (new valuation 2022)",
702 Currency::SomaliShilling => "Somali Shilling",
703 Currency::SurinamDollar => "Surinam Dollar",
704 Currency::SouthSudanesePound => "South Sudanese Pound",
705 Currency::Dobra => "Dobra",
706 Currency::ElSalvadorColon => "El Salvador Colon",
707 Currency::SyrianPound => "Syrian Pound",
708 Currency::Lilangeni => "Lilangeni",
709 Currency::Baht => "Baht",
710 Currency::Somoni => "Somoni",
711 Currency::TurkmenistanNewManat => "Turkmenistan New Manat",
712 Currency::TunisianDinar => "Tunisian Dinar",
713 Currency::PaAnga => "Pa’anga",
714 Currency::TurkishLira => "Turkish Lira",
715 Currency::TrinidadAndTobagoDollar => "Trinidad and Tobago Dollar",
716 Currency::NewTaiwanDollar => "New Taiwan Dollar",
717 Currency::TanzanianShilling => "Tanzanian Shilling",
718 Currency::Hryvnia => "Hryvnia",
719 Currency::UgandaShilling => "Uganda Shilling",
720 Currency::UsDollar => "US Dollar",
721 Currency::UsDollarNextDay => "US Dollar (Next day)",
722 Currency::UruguayPesoEnUnidadesIndexadasUi => "Uruguay Peso en Unidades Indexadas (UI)",
723 Currency::PesoUruguayo => "Peso Uruguayo",
724 Currency::UnidadPrevisional => "Unidad Previsional",
725 Currency::UzbekistanSum => "Uzbekistan Sum",
726 Currency::BolívarSoberanoNewValuation => "Bolívar Soberano, new valuation",
727 Currency::BolívarSoberano => "Bolívar Soberano",
728 Currency::Dong => "Dong",
729 Currency::Vatu => "Vatu",
730 Currency::Tala => "Tala",
731 Currency::CfaFrancBeac => "CFA Franc BEAC",
732 Currency::Silver => "Silver",
733 Currency::Gold => "Gold",
734 Currency::BondMarketsUnitEuropeanCompositeUnitEurco => {
735 "Bond Markets Unit European Composite Unit (EURCO)"
736 }
737 Currency::BondMarketsUnitEuropeanMonetaryUnitEMU6 => {
738 "Bond Markets Unit European Monetary Unit (E.M.U.-6)"
739 }
740 Currency::BondMarketsUnitEuropeanUnitAccount9EUA9 => {
741 "Bond Markets Unit European Unit of Account 9 (E.U.A.-9)"
742 }
743 Currency::BondMarketsUnitEuropeanUnitAccount17EUA17 => {
744 "Bond Markets Unit European Unit of Account 17 (E.U.A.-17)"
745 }
746 Currency::EastCaribbeanDollar => "East Caribbean Dollar",
747 Currency::SdrSpecialDrawingRight => "SDR (Special Drawing Right)",
748 Currency::CfaFrancBceao => "CFA Franc BCEAO",
749 Currency::Palladium => "Palladium",
750 Currency::CfpFranc => "CFP Franc",
751 Currency::Platinum => "Platinum",
752 Currency::Sucre => "Sucre",
753 Currency::CodesSpecificallyReservedForTestingPurposes => {
754 "Codes specifically reserved for testing purposes"
755 }
756 Currency::AdbUnitAccount => "ADB Unit of Account",
757 Currency::TheCodesAssignedForTransactionsWhereNoCurrencyIsInvolved => {
758 "The codes assigned for transactions where no currency is involved"
759 }
760 Currency::YemeniRial => "Yemeni Rial",
761 Currency::Rand => "Rand",
762 Currency::ZambianKwacha => "Zambian Kwacha",
763 Currency::ZimbabweGold => "Zimbabwe Gold",
764 Currency::ZimbabweDollar => "Zimbabwe Dollar",
765 }
766 }
767}
768
769impl crate::FromCode for Currency {
770 fn from_code(code: &str) -> Option<Self>
771 where
772 Self: Sized,
773 {
774 match code {
775 "AED" => Some(Currency::UaeDirham),
776 "AFN" => Some(Currency::Afghani),
777 "ALL" => Some(Currency::Lek),
778 "AMD" => Some(Currency::ArmenianDram),
779 "ANG" => Some(Currency::NetherlandsAntilleanGuilder),
780 "AOA" => Some(Currency::Kwanza),
781 "ARS" => Some(Currency::ArgentinePeso),
782 "AUD" => Some(Currency::AustralianDollar),
783 "AWG" => Some(Currency::ArubanFlorin),
784 "AZN" => Some(Currency::AzerbaijanManat),
785 "BAM" => Some(Currency::ConvertibleMark),
786 "BBD" => Some(Currency::BarbadosDollar),
787 "BDT" => Some(Currency::Taka),
788 "BGN" => Some(Currency::BulgarianLev),
789 "BHD" => Some(Currency::BahrainiDinar),
790 "BIF" => Some(Currency::BurundiFranc),
791 "BMD" => Some(Currency::BermudianDollar),
792 "BND" => Some(Currency::BruneiDollar),
793 "BOB" => Some(Currency::Boliviano),
794 "BOV" => Some(Currency::Mvdol),
795 "BRL" => Some(Currency::BrazilianReal),
796 "BSD" => Some(Currency::BahamianDollar),
797 "BTN" => Some(Currency::Ngultrum),
798 "BWP" => Some(Currency::Pula),
799 "BYN" => Some(Currency::BelarusianRuble),
800 "BZD" => Some(Currency::BelizeDollar),
801 "CAD" => Some(Currency::CanadianDollar),
802 "CDF" => Some(Currency::CongoleseFranc),
803 "CHE" => Some(Currency::WirEuro),
804 "CHF" => Some(Currency::SwissFranc),
805 "CHW" => Some(Currency::WirFranc),
806 "CLF" => Some(Currency::UnidadDeFomento),
807 "CLP" => Some(Currency::ChileanPeso),
808 "CNY" => Some(Currency::YuanRenminbi),
809 "COP" => Some(Currency::ColombianPeso),
810 "COU" => Some(Currency::UnidadDeValorReal),
811 "CRC" => Some(Currency::CostaRicanColon),
812 "CUC" => Some(Currency::PesoConvertible),
813 "CUP" => Some(Currency::CubanPeso),
814 "CVE" => Some(Currency::CaboVerdeEscudo),
815 "CZK" => Some(Currency::CzechKoruna),
816 "DJF" => Some(Currency::DjiboutiFranc),
817 "DKK" => Some(Currency::DanishKrone),
818 "DOP" => Some(Currency::DominicanPeso),
819 "DZD" => Some(Currency::AlgerianDinar),
820 "EGP" => Some(Currency::EgyptianPound),
821 "ERN" => Some(Currency::Nakfa),
822 "ETB" => Some(Currency::EthiopianBirr),
823 "EUR" => Some(Currency::Euro),
824 "FJD" => Some(Currency::FijiDollar),
825 "FKP" => Some(Currency::FalklandIslandsPound),
826 "GBP" => Some(Currency::PoundSterling),
827 "GEL" => Some(Currency::Lari),
828 "GHS" => Some(Currency::GhanaCedi),
829 "GIP" => Some(Currency::GibraltarPound),
830 "GMD" => Some(Currency::Dalasi),
831 "GNF" => Some(Currency::GuineanFranc),
832 "GTQ" => Some(Currency::Quetzal),
833 "GYD" => Some(Currency::GuyanaDollar),
834 "HKD" => Some(Currency::HongKongDollar),
835 "HNL" => Some(Currency::Lempira),
836 "HTG" => Some(Currency::Gourde),
837 "HUF" => Some(Currency::Forint),
838 "IDR" => Some(Currency::Rupiah),
839 "ILS" => Some(Currency::NewIsraeliSheqel),
840 "INR" => Some(Currency::IndianRupee),
841 "IQD" => Some(Currency::IraqiDinar),
842 "IRR" => Some(Currency::IranianRial),
843 "ISK" => Some(Currency::IcelandKrona),
844 "JMD" => Some(Currency::JamaicanDollar),
845 "JOD" => Some(Currency::JordanianDinar),
846 "JPY" => Some(Currency::Yen),
847 "KES" => Some(Currency::KenyanShilling),
848 "KGS" => Some(Currency::Som),
849 "KHR" => Some(Currency::Riel),
850 "KMF" => Some(Currency::ComorianFranc),
851 "KPW" => Some(Currency::NorthKoreanWon),
852 "KRW" => Some(Currency::Won),
853 "KWD" => Some(Currency::KuwaitiDinar),
854 "KYD" => Some(Currency::CaymanIslandsDollar),
855 "KZT" => Some(Currency::Tenge),
856 "LAK" => Some(Currency::LaoKip),
857 "LBP" => Some(Currency::LebanesePound),
858 "LKR" => Some(Currency::SriLankaRupee),
859 "LRD" => Some(Currency::LiberianDollar),
860 "LSL" => Some(Currency::Loti),
861 "LYD" => Some(Currency::LibyanDinar),
862 "MAD" => Some(Currency::MoroccanDirham),
863 "MDL" => Some(Currency::MoldovanLeu),
864 "MGA" => Some(Currency::MalagasyAriary),
865 "MKD" => Some(Currency::Denar),
866 "MMK" => Some(Currency::Kyat),
867 "MNT" => Some(Currency::Tugrik),
868 "MOP" => Some(Currency::Pataca),
869 "MRU" => Some(Currency::Ouguiya),
870 "MUR" => Some(Currency::MauritiusRupee),
871 "MVR" => Some(Currency::Rufiyaa),
872 "MWK" => Some(Currency::MalawiKwacha),
873 "MXN" => Some(Currency::MexicanPeso),
874 "MXV" => Some(Currency::MexicanUnidadDeInversionUdi),
875 "MYR" => Some(Currency::MalaysianRinggit),
876 "MZN" => Some(Currency::MozambiqueMetical),
877 "NAD" => Some(Currency::NamibiaDollar),
878 "NGN" => Some(Currency::Naira),
879 "NIO" => Some(Currency::CordobaOro),
880 "NOK" => Some(Currency::NorwegianKrone),
881 "NPR" => Some(Currency::NepaleseRupee),
882 "NZD" => Some(Currency::NewZealandDollar),
883 "OMR" => Some(Currency::RialOmani),
884 "PAB" => Some(Currency::Balboa),
885 "PEN" => Some(Currency::Sol),
886 "PGK" => Some(Currency::Kina),
887 "PHP" => Some(Currency::PhilippinePeso),
888 "PKR" => Some(Currency::PakistanRupee),
889 "PLN" => Some(Currency::Zloty),
890 "PYG" => Some(Currency::Guarani),
891 "QAR" => Some(Currency::QatariRial),
892 "RON" => Some(Currency::RomanianLeu),
893 "RSD" => Some(Currency::SerbianDinar),
894 "RUB" => Some(Currency::RussianRuble),
895 "RWF" => Some(Currency::RwandaFranc),
896 "SAR" => Some(Currency::SaudiRiyal),
897 "SBD" => Some(Currency::SolomonIslandsDollar),
898 "SCR" => Some(Currency::SeychellesRupee),
899 "SDG" => Some(Currency::SudanesePound),
900 "SEK" => Some(Currency::SwedishKrona),
901 "SGD" => Some(Currency::SingaporeDollar),
902 "SHP" => Some(Currency::SaintHelenaPound),
903 "SLE" => Some(Currency::SierraLeoneNewValuation2022),
904 "SOS" => Some(Currency::SomaliShilling),
905 "SRD" => Some(Currency::SurinamDollar),
906 "SSP" => Some(Currency::SouthSudanesePound),
907 "STN" => Some(Currency::Dobra),
908 "SVC" => Some(Currency::ElSalvadorColon),
909 "SYP" => Some(Currency::SyrianPound),
910 "SZL" => Some(Currency::Lilangeni),
911 "THB" => Some(Currency::Baht),
912 "TJS" => Some(Currency::Somoni),
913 "TMT" => Some(Currency::TurkmenistanNewManat),
914 "TND" => Some(Currency::TunisianDinar),
915 "TOP" => Some(Currency::PaAnga),
916 "TRY" => Some(Currency::TurkishLira),
917 "TTD" => Some(Currency::TrinidadAndTobagoDollar),
918 "TWD" => Some(Currency::NewTaiwanDollar),
919 "TZS" => Some(Currency::TanzanianShilling),
920 "UAH" => Some(Currency::Hryvnia),
921 "UGX" => Some(Currency::UgandaShilling),
922 "USD" => Some(Currency::UsDollar),
923 "USN" => Some(Currency::UsDollarNextDay),
924 "UYI" => Some(Currency::UruguayPesoEnUnidadesIndexadasUi),
925 "UYU" => Some(Currency::PesoUruguayo),
926 "UYW" => Some(Currency::UnidadPrevisional),
927 "UZS" => Some(Currency::UzbekistanSum),
928 "VED" => Some(Currency::BolívarSoberanoNewValuation),
929 "VES" => Some(Currency::BolívarSoberano),
930 "VND" => Some(Currency::Dong),
931 "VUV" => Some(Currency::Vatu),
932 "WST" => Some(Currency::Tala),
933 "XAF" => Some(Currency::CfaFrancBeac),
934 "XAG" => Some(Currency::Silver),
935 "XAU" => Some(Currency::Gold),
936 "XBA" => Some(Currency::BondMarketsUnitEuropeanCompositeUnitEurco),
937 "XBB" => Some(Currency::BondMarketsUnitEuropeanMonetaryUnitEMU6),
938 "XBC" => Some(Currency::BondMarketsUnitEuropeanUnitAccount9EUA9),
939 "XBD" => Some(Currency::BondMarketsUnitEuropeanUnitAccount17EUA17),
940 "XCD" => Some(Currency::EastCaribbeanDollar),
941 "XDR" => Some(Currency::SdrSpecialDrawingRight),
942 "XOF" => Some(Currency::CfaFrancBceao),
943 "XPD" => Some(Currency::Palladium),
944 "XPF" => Some(Currency::CfpFranc),
945 "XPT" => Some(Currency::Platinum),
946 "XSU" => Some(Currency::Sucre),
947 "XTS" => Some(Currency::CodesSpecificallyReservedForTestingPurposes),
948 "XUA" => Some(Currency::AdbUnitAccount),
949 "XXX" => Some(Currency::TheCodesAssignedForTransactionsWhereNoCurrencyIsInvolved),
950 "YER" => Some(Currency::YemeniRial),
951 "ZAR" => Some(Currency::Rand),
952 "ZMW" => Some(Currency::ZambianKwacha),
953 "ZWG" => Some(Currency::ZimbabweGold),
954 "ZWL" => Some(Currency::ZimbabweDollar),
955 _ => None,
956 }
957 }
958}
959
960#[cfg(feature = "iso_currency")]
962impl std::convert::TryFrom<Currency> for iso_currency::Currency {
963 type Error = ErrFromCurrencyToIsoCurrencyCurrency;
964 fn try_from(value: Currency) -> Result<Self, Self::Error> {
965 match value {
966 Currency::UaeDirham => Ok(iso_currency::Currency::AED),
967 Currency::Afghani => Ok(iso_currency::Currency::AFN),
968 Currency::Lek => Ok(iso_currency::Currency::ALL),
969 Currency::ArmenianDram => Ok(iso_currency::Currency::AMD),
970 Currency::Kwanza => Ok(iso_currency::Currency::AOA),
971 Currency::ArgentinePeso => Ok(iso_currency::Currency::ARS),
972 Currency::AustralianDollar => Ok(iso_currency::Currency::AUD),
973 Currency::ArubanFlorin => Ok(iso_currency::Currency::AWG),
974 Currency::AzerbaijanManat => Ok(iso_currency::Currency::AZN),
975 Currency::ConvertibleMark => Ok(iso_currency::Currency::BAM),
976 Currency::BarbadosDollar => Ok(iso_currency::Currency::BBD),
977 Currency::Taka => Ok(iso_currency::Currency::BDT),
978 Currency::BulgarianLev => Ok(iso_currency::Currency::BGN),
979 Currency::BahrainiDinar => Ok(iso_currency::Currency::BHD),
980 Currency::BurundiFranc => Ok(iso_currency::Currency::BIF),
981 Currency::BermudianDollar => Ok(iso_currency::Currency::BMD),
982 Currency::BruneiDollar => Ok(iso_currency::Currency::BND),
983 Currency::Boliviano => Ok(iso_currency::Currency::BOB),
984 Currency::Mvdol => Ok(iso_currency::Currency::BOV),
985 Currency::BrazilianReal => Ok(iso_currency::Currency::BRL),
986 Currency::BahamianDollar => Ok(iso_currency::Currency::BSD),
987 Currency::Ngultrum => Ok(iso_currency::Currency::BTN),
988 Currency::Pula => Ok(iso_currency::Currency::BWP),
989 Currency::BelarusianRuble => Ok(iso_currency::Currency::BYN),
990 Currency::BelizeDollar => Ok(iso_currency::Currency::BZD),
991 Currency::CanadianDollar => Ok(iso_currency::Currency::CAD),
992 Currency::CongoleseFranc => Ok(iso_currency::Currency::CDF),
993 Currency::WirEuro => Ok(iso_currency::Currency::CHE),
994 Currency::SwissFranc => Ok(iso_currency::Currency::CHF),
995 Currency::WirFranc => Ok(iso_currency::Currency::CHW),
996 Currency::UnidadDeFomento => Ok(iso_currency::Currency::CLF),
997 Currency::ChileanPeso => Ok(iso_currency::Currency::CLP),
998 Currency::YuanRenminbi => Ok(iso_currency::Currency::CNY),
999 Currency::ColombianPeso => Ok(iso_currency::Currency::COP),
1000 Currency::UnidadDeValorReal => Ok(iso_currency::Currency::COU),
1001 Currency::CostaRicanColon => Ok(iso_currency::Currency::CRC),
1002 Currency::PesoConvertible => Ok(iso_currency::Currency::CUC),
1003 Currency::CubanPeso => Ok(iso_currency::Currency::CUP),
1004 Currency::CaboVerdeEscudo => Ok(iso_currency::Currency::CVE),
1005 Currency::CzechKoruna => Ok(iso_currency::Currency::CZK),
1006 Currency::DjiboutiFranc => Ok(iso_currency::Currency::DJF),
1007 Currency::DanishKrone => Ok(iso_currency::Currency::DKK),
1008 Currency::DominicanPeso => Ok(iso_currency::Currency::DOP),
1009 Currency::AlgerianDinar => Ok(iso_currency::Currency::DZD),
1010 Currency::EgyptianPound => Ok(iso_currency::Currency::EGP),
1011 Currency::Nakfa => Ok(iso_currency::Currency::ERN),
1012 Currency::EthiopianBirr => Ok(iso_currency::Currency::ETB),
1013 Currency::Euro => Ok(iso_currency::Currency::EUR),
1014 Currency::FijiDollar => Ok(iso_currency::Currency::FJD),
1015 Currency::FalklandIslandsPound => Ok(iso_currency::Currency::FKP),
1016 Currency::PoundSterling => Ok(iso_currency::Currency::GBP),
1017 Currency::Lari => Ok(iso_currency::Currency::GEL),
1018 Currency::GhanaCedi => Ok(iso_currency::Currency::GHS),
1019 Currency::GibraltarPound => Ok(iso_currency::Currency::GIP),
1020 Currency::Dalasi => Ok(iso_currency::Currency::GMD),
1021 Currency::GuineanFranc => Ok(iso_currency::Currency::GNF),
1022 Currency::Quetzal => Ok(iso_currency::Currency::GTQ),
1023 Currency::GuyanaDollar => Ok(iso_currency::Currency::GYD),
1024 Currency::HongKongDollar => Ok(iso_currency::Currency::HKD),
1025 Currency::Lempira => Ok(iso_currency::Currency::HNL),
1026 Currency::Gourde => Ok(iso_currency::Currency::HTG),
1027 Currency::Forint => Ok(iso_currency::Currency::HUF),
1028 Currency::Rupiah => Ok(iso_currency::Currency::IDR),
1029 Currency::NewIsraeliSheqel => Ok(iso_currency::Currency::ILS),
1030 Currency::IndianRupee => Ok(iso_currency::Currency::INR),
1031 Currency::IraqiDinar => Ok(iso_currency::Currency::IQD),
1032 Currency::IranianRial => Ok(iso_currency::Currency::IRR),
1033 Currency::IcelandKrona => Ok(iso_currency::Currency::ISK),
1034 Currency::JamaicanDollar => Ok(iso_currency::Currency::JMD),
1035 Currency::JordanianDinar => Ok(iso_currency::Currency::JOD),
1036 Currency::Yen => Ok(iso_currency::Currency::JPY),
1037 Currency::KenyanShilling => Ok(iso_currency::Currency::KES),
1038 Currency::Som => Ok(iso_currency::Currency::KGS),
1039 Currency::Riel => Ok(iso_currency::Currency::KHR),
1040 Currency::ComorianFranc => Ok(iso_currency::Currency::KMF),
1041 Currency::NorthKoreanWon => Ok(iso_currency::Currency::KPW),
1042 Currency::Won => Ok(iso_currency::Currency::KRW),
1043 Currency::KuwaitiDinar => Ok(iso_currency::Currency::KWD),
1044 Currency::CaymanIslandsDollar => Ok(iso_currency::Currency::KYD),
1045 Currency::Tenge => Ok(iso_currency::Currency::KZT),
1046 Currency::LaoKip => Ok(iso_currency::Currency::LAK),
1047 Currency::LebanesePound => Ok(iso_currency::Currency::LBP),
1048 Currency::SriLankaRupee => Ok(iso_currency::Currency::LKR),
1049 Currency::LiberianDollar => Ok(iso_currency::Currency::LRD),
1050 Currency::Loti => Ok(iso_currency::Currency::LSL),
1051 Currency::LibyanDinar => Ok(iso_currency::Currency::LYD),
1052 Currency::MoroccanDirham => Ok(iso_currency::Currency::MAD),
1053 Currency::MoldovanLeu => Ok(iso_currency::Currency::MDL),
1054 Currency::MalagasyAriary => Ok(iso_currency::Currency::MGA),
1055 Currency::Denar => Ok(iso_currency::Currency::MKD),
1056 Currency::Kyat => Ok(iso_currency::Currency::MMK),
1057 Currency::Tugrik => Ok(iso_currency::Currency::MNT),
1058 Currency::Pataca => Ok(iso_currency::Currency::MOP),
1059 Currency::Ouguiya => Ok(iso_currency::Currency::MRU),
1060 Currency::MauritiusRupee => Ok(iso_currency::Currency::MUR),
1061 Currency::Rufiyaa => Ok(iso_currency::Currency::MVR),
1062 Currency::MalawiKwacha => Ok(iso_currency::Currency::MWK),
1063 Currency::MexicanPeso => Ok(iso_currency::Currency::MXN),
1064 Currency::MexicanUnidadDeInversionUdi => Ok(iso_currency::Currency::MXV),
1065 Currency::MalaysianRinggit => Ok(iso_currency::Currency::MYR),
1066 Currency::MozambiqueMetical => Ok(iso_currency::Currency::MZN),
1067 Currency::NamibiaDollar => Ok(iso_currency::Currency::NAD),
1068 Currency::Naira => Ok(iso_currency::Currency::NGN),
1069 Currency::CordobaOro => Ok(iso_currency::Currency::NIO),
1070 Currency::NorwegianKrone => Ok(iso_currency::Currency::NOK),
1071 Currency::NepaleseRupee => Ok(iso_currency::Currency::NPR),
1072 Currency::NewZealandDollar => Ok(iso_currency::Currency::NZD),
1073 Currency::RialOmani => Ok(iso_currency::Currency::OMR),
1074 Currency::Balboa => Ok(iso_currency::Currency::PAB),
1075 Currency::Sol => Ok(iso_currency::Currency::PEN),
1076 Currency::Kina => Ok(iso_currency::Currency::PGK),
1077 Currency::PhilippinePeso => Ok(iso_currency::Currency::PHP),
1078 Currency::PakistanRupee => Ok(iso_currency::Currency::PKR),
1079 Currency::Zloty => Ok(iso_currency::Currency::PLN),
1080 Currency::Guarani => Ok(iso_currency::Currency::PYG),
1081 Currency::QatariRial => Ok(iso_currency::Currency::QAR),
1082 Currency::RomanianLeu => Ok(iso_currency::Currency::RON),
1083 Currency::SerbianDinar => Ok(iso_currency::Currency::RSD),
1084 Currency::RussianRuble => Ok(iso_currency::Currency::RUB),
1085 Currency::RwandaFranc => Ok(iso_currency::Currency::RWF),
1086 Currency::SaudiRiyal => Ok(iso_currency::Currency::SAR),
1087 Currency::SolomonIslandsDollar => Ok(iso_currency::Currency::SBD),
1088 Currency::SeychellesRupee => Ok(iso_currency::Currency::SCR),
1089 Currency::SudanesePound => Ok(iso_currency::Currency::SDG),
1090 Currency::SwedishKrona => Ok(iso_currency::Currency::SEK),
1091 Currency::SingaporeDollar => Ok(iso_currency::Currency::SGD),
1092 Currency::SaintHelenaPound => Ok(iso_currency::Currency::SHP),
1093 Currency::SierraLeoneNewValuation2022 => Ok(iso_currency::Currency::SLE),
1094 Currency::SomaliShilling => Ok(iso_currency::Currency::SOS),
1095 Currency::SurinamDollar => Ok(iso_currency::Currency::SRD),
1096 Currency::SouthSudanesePound => Ok(iso_currency::Currency::SSP),
1097 Currency::Dobra => Ok(iso_currency::Currency::STN),
1098 Currency::ElSalvadorColon => Ok(iso_currency::Currency::SVC),
1099 Currency::SyrianPound => Ok(iso_currency::Currency::SYP),
1100 Currency::Lilangeni => Ok(iso_currency::Currency::SZL),
1101 Currency::Baht => Ok(iso_currency::Currency::THB),
1102 Currency::Somoni => Ok(iso_currency::Currency::TJS),
1103 Currency::TurkmenistanNewManat => Ok(iso_currency::Currency::TMT),
1104 Currency::TunisianDinar => Ok(iso_currency::Currency::TND),
1105 Currency::PaAnga => Ok(iso_currency::Currency::TOP),
1106 Currency::TurkishLira => Ok(iso_currency::Currency::TRY),
1107 Currency::TrinidadAndTobagoDollar => Ok(iso_currency::Currency::TTD),
1108 Currency::NewTaiwanDollar => Ok(iso_currency::Currency::TWD),
1109 Currency::TanzanianShilling => Ok(iso_currency::Currency::TZS),
1110 Currency::Hryvnia => Ok(iso_currency::Currency::UAH),
1111 Currency::UgandaShilling => Ok(iso_currency::Currency::UGX),
1112 Currency::UsDollar => Ok(iso_currency::Currency::USD),
1113 Currency::UsDollarNextDay => Ok(iso_currency::Currency::USN),
1114 Currency::UruguayPesoEnUnidadesIndexadasUi => Ok(iso_currency::Currency::UYI),
1115 Currency::PesoUruguayo => Ok(iso_currency::Currency::UYU),
1116 Currency::UnidadPrevisional => Ok(iso_currency::Currency::UYW),
1117 Currency::UzbekistanSum => Ok(iso_currency::Currency::UZS),
1118 Currency::BolívarSoberanoNewValuation => Ok(iso_currency::Currency::VED),
1119 Currency::BolívarSoberano => Ok(iso_currency::Currency::VES),
1120 Currency::Dong => Ok(iso_currency::Currency::VND),
1121 Currency::Vatu => Ok(iso_currency::Currency::VUV),
1122 Currency::Tala => Ok(iso_currency::Currency::WST),
1123 Currency::CfaFrancBeac => Ok(iso_currency::Currency::XAF),
1124 Currency::Silver => Ok(iso_currency::Currency::XAG),
1125 Currency::Gold => Ok(iso_currency::Currency::XAU),
1126 Currency::BondMarketsUnitEuropeanCompositeUnitEurco => Ok(iso_currency::Currency::XBA),
1127 Currency::BondMarketsUnitEuropeanMonetaryUnitEMU6 => Ok(iso_currency::Currency::XBB),
1128 Currency::BondMarketsUnitEuropeanUnitAccount9EUA9 => Ok(iso_currency::Currency::XBC),
1129 Currency::BondMarketsUnitEuropeanUnitAccount17EUA17 => Ok(iso_currency::Currency::XBD),
1130 Currency::EastCaribbeanDollar => Ok(iso_currency::Currency::XCD),
1131 Currency::SdrSpecialDrawingRight => Ok(iso_currency::Currency::XDR),
1132 Currency::CfaFrancBceao => Ok(iso_currency::Currency::XOF),
1133 Currency::Palladium => Ok(iso_currency::Currency::XPD),
1134 Currency::CfpFranc => Ok(iso_currency::Currency::XPF),
1135 Currency::Platinum => Ok(iso_currency::Currency::XPT),
1136 Currency::Sucre => Ok(iso_currency::Currency::XSU),
1137 Currency::CodesSpecificallyReservedForTestingPurposes => {
1138 Ok(iso_currency::Currency::XTS)
1139 }
1140 Currency::AdbUnitAccount => Ok(iso_currency::Currency::XUA),
1141 Currency::TheCodesAssignedForTransactionsWhereNoCurrencyIsInvolved => {
1142 Ok(iso_currency::Currency::XXX)
1143 }
1144 Currency::YemeniRial => Ok(iso_currency::Currency::YER),
1145 Currency::Rand => Ok(iso_currency::Currency::ZAR),
1146 Currency::ZambianKwacha => Ok(iso_currency::Currency::ZMW),
1147 Currency::ZimbabweGold => Ok(iso_currency::Currency::ZWG),
1148 Currency::ZimbabweDollar => Ok(iso_currency::Currency::ZWL),
1149 Currency::NetherlandsAntilleanGuilder => {
1150 Err(ErrFromCurrencyToIsoCurrencyCurrency::NetherlandsAntilleanGuilder)
1151 }
1152 }
1153 }
1154}
1155
1156#[cfg(feature = "iso_currency")]
1157#[derive(Debug, PartialEq, Eq, Hash)]
1159pub enum ErrFromCurrencyToIsoCurrencyCurrency {
1160 NetherlandsAntilleanGuilder,
1161}
1162
1163#[cfg(feature = "iso_currency")]
1164impl std::fmt::Display for ErrFromCurrencyToIsoCurrencyCurrency {
1165 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1166 match self {
1167 ErrFromCurrencyToIsoCurrencyCurrency::NetherlandsAntilleanGuilder => write!(
1168 f,
1169 "NetherlandsAntilleanGuilder has no corresponding value in iso_currency::Currency"
1170 ),
1171 }
1172 }
1173}
1174
1175#[cfg(feature = "iso_currency")]
1176impl std::error::Error for ErrFromCurrencyToIsoCurrencyCurrency {}
1177
1178#[cfg(feature = "iso_currency")]
1179impl std::convert::TryFrom<iso_currency::Currency> for Currency {
1180 type Error = ErrFromIsoCurrencyCurrencyToCurrency;
1181 fn try_from(value: iso_currency::Currency) -> Result<Currency, Self::Error> {
1182 match value {
1183 iso_currency::Currency::AED => Ok(Currency::UaeDirham),
1184 iso_currency::Currency::AFN => Ok(Currency::Afghani),
1185 iso_currency::Currency::ALL => Ok(Currency::Lek),
1186 iso_currency::Currency::AMD => Ok(Currency::ArmenianDram),
1187 iso_currency::Currency::AOA => Ok(Currency::Kwanza),
1188 iso_currency::Currency::ARS => Ok(Currency::ArgentinePeso),
1189 iso_currency::Currency::AUD => Ok(Currency::AustralianDollar),
1190 iso_currency::Currency::AWG => Ok(Currency::ArubanFlorin),
1191 iso_currency::Currency::AZN => Ok(Currency::AzerbaijanManat),
1192 iso_currency::Currency::BAM => Ok(Currency::ConvertibleMark),
1193 iso_currency::Currency::BBD => Ok(Currency::BarbadosDollar),
1194 iso_currency::Currency::BDT => Ok(Currency::Taka),
1195 iso_currency::Currency::BGN => Ok(Currency::BulgarianLev),
1196 iso_currency::Currency::BHD => Ok(Currency::BahrainiDinar),
1197 iso_currency::Currency::BIF => Ok(Currency::BurundiFranc),
1198 iso_currency::Currency::BMD => Ok(Currency::BermudianDollar),
1199 iso_currency::Currency::BND => Ok(Currency::BruneiDollar),
1200 iso_currency::Currency::BOB => Ok(Currency::Boliviano),
1201 iso_currency::Currency::BOV => Ok(Currency::Mvdol),
1202 iso_currency::Currency::BRL => Ok(Currency::BrazilianReal),
1203 iso_currency::Currency::BSD => Ok(Currency::BahamianDollar),
1204 iso_currency::Currency::BTN => Ok(Currency::Ngultrum),
1205 iso_currency::Currency::BWP => Ok(Currency::Pula),
1206 iso_currency::Currency::BYN => Ok(Currency::BelarusianRuble),
1207 iso_currency::Currency::BZD => Ok(Currency::BelizeDollar),
1208 iso_currency::Currency::CAD => Ok(Currency::CanadianDollar),
1209 iso_currency::Currency::CDF => Ok(Currency::CongoleseFranc),
1210 iso_currency::Currency::CHE => Ok(Currency::WirEuro),
1211 iso_currency::Currency::CHF => Ok(Currency::SwissFranc),
1212 iso_currency::Currency::CHW => Ok(Currency::WirFranc),
1213 iso_currency::Currency::CLF => Ok(Currency::UnidadDeFomento),
1214 iso_currency::Currency::CLP => Ok(Currency::ChileanPeso),
1215 iso_currency::Currency::CNY => Ok(Currency::YuanRenminbi),
1216 iso_currency::Currency::COP => Ok(Currency::ColombianPeso),
1217 iso_currency::Currency::COU => Ok(Currency::UnidadDeValorReal),
1218 iso_currency::Currency::CRC => Ok(Currency::CostaRicanColon),
1219 iso_currency::Currency::CUC => Ok(Currency::PesoConvertible),
1220 iso_currency::Currency::CUP => Ok(Currency::CubanPeso),
1221 iso_currency::Currency::CVE => Ok(Currency::CaboVerdeEscudo),
1222 iso_currency::Currency::CZK => Ok(Currency::CzechKoruna),
1223 iso_currency::Currency::DJF => Ok(Currency::DjiboutiFranc),
1224 iso_currency::Currency::DKK => Ok(Currency::DanishKrone),
1225 iso_currency::Currency::DOP => Ok(Currency::DominicanPeso),
1226 iso_currency::Currency::DZD => Ok(Currency::AlgerianDinar),
1227 iso_currency::Currency::EGP => Ok(Currency::EgyptianPound),
1228 iso_currency::Currency::ERN => Ok(Currency::Nakfa),
1229 iso_currency::Currency::ETB => Ok(Currency::EthiopianBirr),
1230 iso_currency::Currency::EUR => Ok(Currency::Euro),
1231 iso_currency::Currency::FJD => Ok(Currency::FijiDollar),
1232 iso_currency::Currency::FKP => Ok(Currency::FalklandIslandsPound),
1233 iso_currency::Currency::GBP => Ok(Currency::PoundSterling),
1234 iso_currency::Currency::GEL => Ok(Currency::Lari),
1235 iso_currency::Currency::GHS => Ok(Currency::GhanaCedi),
1236 iso_currency::Currency::GIP => Ok(Currency::GibraltarPound),
1237 iso_currency::Currency::GMD => Ok(Currency::Dalasi),
1238 iso_currency::Currency::GNF => Ok(Currency::GuineanFranc),
1239 iso_currency::Currency::GTQ => Ok(Currency::Quetzal),
1240 iso_currency::Currency::GYD => Ok(Currency::GuyanaDollar),
1241 iso_currency::Currency::HKD => Ok(Currency::HongKongDollar),
1242 iso_currency::Currency::HNL => Ok(Currency::Lempira),
1243 iso_currency::Currency::HTG => Ok(Currency::Gourde),
1244 iso_currency::Currency::HUF => Ok(Currency::Forint),
1245 iso_currency::Currency::IDR => Ok(Currency::Rupiah),
1246 iso_currency::Currency::ILS => Ok(Currency::NewIsraeliSheqel),
1247 iso_currency::Currency::INR => Ok(Currency::IndianRupee),
1248 iso_currency::Currency::IQD => Ok(Currency::IraqiDinar),
1249 iso_currency::Currency::IRR => Ok(Currency::IranianRial),
1250 iso_currency::Currency::ISK => Ok(Currency::IcelandKrona),
1251 iso_currency::Currency::JMD => Ok(Currency::JamaicanDollar),
1252 iso_currency::Currency::JOD => Ok(Currency::JordanianDinar),
1253 iso_currency::Currency::JPY => Ok(Currency::Yen),
1254 iso_currency::Currency::KES => Ok(Currency::KenyanShilling),
1255 iso_currency::Currency::KGS => Ok(Currency::Som),
1256 iso_currency::Currency::KHR => Ok(Currency::Riel),
1257 iso_currency::Currency::KMF => Ok(Currency::ComorianFranc),
1258 iso_currency::Currency::KPW => Ok(Currency::NorthKoreanWon),
1259 iso_currency::Currency::KRW => Ok(Currency::Won),
1260 iso_currency::Currency::KWD => Ok(Currency::KuwaitiDinar),
1261 iso_currency::Currency::KYD => Ok(Currency::CaymanIslandsDollar),
1262 iso_currency::Currency::KZT => Ok(Currency::Tenge),
1263 iso_currency::Currency::LAK => Ok(Currency::LaoKip),
1264 iso_currency::Currency::LBP => Ok(Currency::LebanesePound),
1265 iso_currency::Currency::LKR => Ok(Currency::SriLankaRupee),
1266 iso_currency::Currency::LRD => Ok(Currency::LiberianDollar),
1267 iso_currency::Currency::LSL => Ok(Currency::Loti),
1268 iso_currency::Currency::LYD => Ok(Currency::LibyanDinar),
1269 iso_currency::Currency::MAD => Ok(Currency::MoroccanDirham),
1270 iso_currency::Currency::MDL => Ok(Currency::MoldovanLeu),
1271 iso_currency::Currency::MGA => Ok(Currency::MalagasyAriary),
1272 iso_currency::Currency::MKD => Ok(Currency::Denar),
1273 iso_currency::Currency::MMK => Ok(Currency::Kyat),
1274 iso_currency::Currency::MNT => Ok(Currency::Tugrik),
1275 iso_currency::Currency::MOP => Ok(Currency::Pataca),
1276 iso_currency::Currency::MRU => Ok(Currency::Ouguiya),
1277 iso_currency::Currency::MUR => Ok(Currency::MauritiusRupee),
1278 iso_currency::Currency::MVR => Ok(Currency::Rufiyaa),
1279 iso_currency::Currency::MWK => Ok(Currency::MalawiKwacha),
1280 iso_currency::Currency::MXN => Ok(Currency::MexicanPeso),
1281 iso_currency::Currency::MXV => Ok(Currency::MexicanUnidadDeInversionUdi),
1282 iso_currency::Currency::MYR => Ok(Currency::MalaysianRinggit),
1283 iso_currency::Currency::MZN => Ok(Currency::MozambiqueMetical),
1284 iso_currency::Currency::NAD => Ok(Currency::NamibiaDollar),
1285 iso_currency::Currency::NGN => Ok(Currency::Naira),
1286 iso_currency::Currency::NIO => Ok(Currency::CordobaOro),
1287 iso_currency::Currency::NOK => Ok(Currency::NorwegianKrone),
1288 iso_currency::Currency::NPR => Ok(Currency::NepaleseRupee),
1289 iso_currency::Currency::NZD => Ok(Currency::NewZealandDollar),
1290 iso_currency::Currency::OMR => Ok(Currency::RialOmani),
1291 iso_currency::Currency::PAB => Ok(Currency::Balboa),
1292 iso_currency::Currency::PEN => Ok(Currency::Sol),
1293 iso_currency::Currency::PGK => Ok(Currency::Kina),
1294 iso_currency::Currency::PHP => Ok(Currency::PhilippinePeso),
1295 iso_currency::Currency::PKR => Ok(Currency::PakistanRupee),
1296 iso_currency::Currency::PLN => Ok(Currency::Zloty),
1297 iso_currency::Currency::PYG => Ok(Currency::Guarani),
1298 iso_currency::Currency::QAR => Ok(Currency::QatariRial),
1299 iso_currency::Currency::RON => Ok(Currency::RomanianLeu),
1300 iso_currency::Currency::RSD => Ok(Currency::SerbianDinar),
1301 iso_currency::Currency::RUB => Ok(Currency::RussianRuble),
1302 iso_currency::Currency::RWF => Ok(Currency::RwandaFranc),
1303 iso_currency::Currency::SAR => Ok(Currency::SaudiRiyal),
1304 iso_currency::Currency::SBD => Ok(Currency::SolomonIslandsDollar),
1305 iso_currency::Currency::SCR => Ok(Currency::SeychellesRupee),
1306 iso_currency::Currency::SDG => Ok(Currency::SudanesePound),
1307 iso_currency::Currency::SEK => Ok(Currency::SwedishKrona),
1308 iso_currency::Currency::SGD => Ok(Currency::SingaporeDollar),
1309 iso_currency::Currency::SHP => Ok(Currency::SaintHelenaPound),
1310 iso_currency::Currency::SLE => Ok(Currency::SierraLeoneNewValuation2022),
1311 iso_currency::Currency::SOS => Ok(Currency::SomaliShilling),
1312 iso_currency::Currency::SRD => Ok(Currency::SurinamDollar),
1313 iso_currency::Currency::SSP => Ok(Currency::SouthSudanesePound),
1314 iso_currency::Currency::STN => Ok(Currency::Dobra),
1315 iso_currency::Currency::SVC => Ok(Currency::ElSalvadorColon),
1316 iso_currency::Currency::SYP => Ok(Currency::SyrianPound),
1317 iso_currency::Currency::SZL => Ok(Currency::Lilangeni),
1318 iso_currency::Currency::THB => Ok(Currency::Baht),
1319 iso_currency::Currency::TJS => Ok(Currency::Somoni),
1320 iso_currency::Currency::TMT => Ok(Currency::TurkmenistanNewManat),
1321 iso_currency::Currency::TND => Ok(Currency::TunisianDinar),
1322 iso_currency::Currency::TOP => Ok(Currency::PaAnga),
1323 iso_currency::Currency::TRY => Ok(Currency::TurkishLira),
1324 iso_currency::Currency::TTD => Ok(Currency::TrinidadAndTobagoDollar),
1325 iso_currency::Currency::TWD => Ok(Currency::NewTaiwanDollar),
1326 iso_currency::Currency::TZS => Ok(Currency::TanzanianShilling),
1327 iso_currency::Currency::UAH => Ok(Currency::Hryvnia),
1328 iso_currency::Currency::UGX => Ok(Currency::UgandaShilling),
1329 iso_currency::Currency::USD => Ok(Currency::UsDollar),
1330 iso_currency::Currency::USN => Ok(Currency::UsDollarNextDay),
1331 iso_currency::Currency::UYI => Ok(Currency::UruguayPesoEnUnidadesIndexadasUi),
1332 iso_currency::Currency::UYU => Ok(Currency::PesoUruguayo),
1333 iso_currency::Currency::UYW => Ok(Currency::UnidadPrevisional),
1334 iso_currency::Currency::UZS => Ok(Currency::UzbekistanSum),
1335 iso_currency::Currency::VED => Ok(Currency::BolívarSoberanoNewValuation),
1336 iso_currency::Currency::VES => Ok(Currency::BolívarSoberano),
1337 iso_currency::Currency::VND => Ok(Currency::Dong),
1338 iso_currency::Currency::VUV => Ok(Currency::Vatu),
1339 iso_currency::Currency::WST => Ok(Currency::Tala),
1340 iso_currency::Currency::XAF => Ok(Currency::CfaFrancBeac),
1341 iso_currency::Currency::XAG => Ok(Currency::Silver),
1342 iso_currency::Currency::XAU => Ok(Currency::Gold),
1343 iso_currency::Currency::XBA => Ok(Currency::BondMarketsUnitEuropeanCompositeUnitEurco),
1344 iso_currency::Currency::XBB => Ok(Currency::BondMarketsUnitEuropeanMonetaryUnitEMU6),
1345 iso_currency::Currency::XBC => Ok(Currency::BondMarketsUnitEuropeanUnitAccount9EUA9),
1346 iso_currency::Currency::XBD => Ok(Currency::BondMarketsUnitEuropeanUnitAccount17EUA17),
1347 iso_currency::Currency::XCD => Ok(Currency::EastCaribbeanDollar),
1348 iso_currency::Currency::XDR => Ok(Currency::SdrSpecialDrawingRight),
1349 iso_currency::Currency::XOF => Ok(Currency::CfaFrancBceao),
1350 iso_currency::Currency::XPD => Ok(Currency::Palladium),
1351 iso_currency::Currency::XPF => Ok(Currency::CfpFranc),
1352 iso_currency::Currency::XPT => Ok(Currency::Platinum),
1353 iso_currency::Currency::XSU => Ok(Currency::Sucre),
1354 iso_currency::Currency::XTS => {
1355 Ok(Currency::CodesSpecificallyReservedForTestingPurposes)
1356 }
1357 iso_currency::Currency::XUA => Ok(Currency::AdbUnitAccount),
1358 iso_currency::Currency::XXX => {
1359 Ok(Currency::TheCodesAssignedForTransactionsWhereNoCurrencyIsInvolved)
1360 }
1361 iso_currency::Currency::YER => Ok(Currency::YemeniRial),
1362 iso_currency::Currency::ZAR => Ok(Currency::Rand),
1363 iso_currency::Currency::ZMW => Ok(Currency::ZambianKwacha),
1364 iso_currency::Currency::ZWG => Ok(Currency::ZimbabweGold),
1365 iso_currency::Currency::ZWL => Ok(Currency::ZimbabweDollar),
1366 iso_currency::Currency::XCG => Err(ErrFromIsoCurrencyCurrencyToCurrency::XCG),
1367 iso_currency::Currency::HRK => Err(ErrFromIsoCurrencyCurrencyToCurrency::HRK),
1368 iso_currency::Currency::SLL => Err(ErrFromIsoCurrencyCurrencyToCurrency::SLL),
1369 }
1370 }
1371}
1372
1373#[cfg(feature = "iso_currency")]
1374#[derive(Debug, PartialEq, Eq, Hash)]
1376pub enum ErrFromIsoCurrencyCurrencyToCurrency {
1377 XCG,
1378 HRK,
1379 SLL,
1380}
1381
1382#[cfg(feature = "iso_currency")]
1383impl std::fmt::Display for ErrFromIsoCurrencyCurrencyToCurrency {
1384 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1385 match self {
1386 ErrFromIsoCurrencyCurrencyToCurrency::XCG => {
1387 write!(f, "XCG has no corresponding value in Currency")
1388 }
1389 ErrFromIsoCurrencyCurrencyToCurrency::HRK => {
1390 write!(f, "HRK has no corresponding value in Currency")
1391 }
1392 ErrFromIsoCurrencyCurrencyToCurrency::SLL => {
1393 write!(f, "SLL has no corresponding value in Currency")
1394 }
1395 }
1396 }
1397}
1398
1399#[cfg(feature = "iso_currency")]
1400impl std::error::Error for ErrFromIsoCurrencyCurrencyToCurrency {}
1401