use displaydoc::Display;
use serde::{Deserialize, Serialize};
#[derive(Debug, Display, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
#[allow(clippy::enum_variant_names)]
pub enum Australia {
#[displaydoc("Australian Capital Territory")]
#[serde(rename = "1:australian_capital_territory", alias = "Australian Capital Territory")]
AustralianCapitalTerritory,
#[displaydoc("New South Wales")]
#[serde(rename = "1:new_south_wales", alias = "New South Wales")]
NewSouthWales,
#[displaydoc("Northern Territory")]
#[serde(rename = "1:northern_territory", alias = "Northern Territory")]
NorthernTerritory,
#[displaydoc("Queensland")]
#[serde(rename = "1:queensland", alias = "Queensland")]
Queensland,
#[displaydoc("South Australia")]
#[serde(rename = "1:south_australia", alias = "South Australia")]
SouthAustralia,
#[displaydoc("Tasmania")]
#[serde(rename = "1:tasmania", alias = "Tasmania")]
Tasmania,
#[displaydoc("Victoria")]
#[serde(rename = "1:victoria", alias = "Victoria")]
Victoria,
#[displaydoc("Western Australia")]
#[serde(rename = "1:western_australia", alias = "Western Australia")]
WesternAustralia,
}
#[derive(Debug, Display, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
#[allow(clippy::enum_variant_names)]
pub enum Belgium {
#[displaydoc("Bruxelles-Capitale")]
#[serde(rename = "25:bruxelles-capitale", alias = "Bruxelles-capitale")]
BruxellesCapitale,
#[displaydoc("Vlaanderen")]
#[serde(rename = "25:vlaanderen", alias = "Vlaanderen")]
Vlaanderen,
#[displaydoc("Wallonie")]
#[serde(rename = "25:wallonie", alias = "Wallonie")]
Wallonie,
}
#[derive(Debug, Display, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
#[allow(clippy::enum_variant_names)]
pub enum Denmark {
#[displaydoc("Hovedstaden")]
#[serde(rename = "67:hovedstaden", alias = "Hovedstaden")]
Hovedstaden,
}
#[derive(Debug, Display, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
#[allow(clippy::enum_variant_names)]
pub enum Italy {
#[displaydoc("Abruzzi")]
#[serde(rename = "117:abruzzi", alias = "Abruzzi")]
Abruzzi,
#[displaydoc("Basilicata")]
#[serde(rename = "117:basilicata", alias = "Basilicata")]
Basilicata,
#[displaydoc("Calabria")]
#[serde(rename = "117:calabria", alias = "Calabria")]
Calabria,
#[displaydoc("Campania")]
#[serde(rename = "117:campania", alias = "Campania")]
Campania,
#[displaydoc("Emilia-Romagna")]
#[serde(rename = "117:emilia-romagna", alias = "Emilia-romagna")]
EmiliaRomagna,
#[displaydoc("Friuli-Venezia Giulia")]
#[serde(rename = "117:friuli-venezia_giulia", alias = "Friuli-venezia Giulia")]
FriuliVeneziaGiulia,
#[displaydoc("Lazio")]
#[serde(rename = "117:lazio", alias = "Lazio")]
Lazio,
#[displaydoc("Liguria")]
#[serde(rename = "117:liguria", alias = "Liguria")]
Liguria,
#[displaydoc("Lombardia")]
#[serde(rename = "117:lombardia", alias = "Lombardia")]
Lombardia,
#[displaydoc("Marche")]
#[serde(rename = "117:marche", alias = "Marche")]
Marche,
#[displaydoc("Molise")]
#[serde(rename = "117:molise", alias = "Molise")]
Molise,
#[displaydoc("Piemonte")]
#[serde(rename = "117:piemonte", alias = "Piemonte")]
Piemonte,
#[displaydoc("Puglia")]
#[serde(rename = "117:puglia", alias = "Puglia")]
Puglia,
#[displaydoc("Sardegna")]
#[serde(rename = "117:sardegna", alias = "Sardegna")]
Sardegna,
#[displaydoc("Sicilia")]
#[serde(rename = "117:sicilia", alias = "Sicilia")]
Sicilia,
#[displaydoc("Toscana")]
#[serde(rename = "117:toscana", alias = "Toscana")]
Toscana,
#[displaydoc("Trentino-Alto Adige")]
#[serde(rename = "117:trentino-alto_adige", alias = "Trentino-alto Adige")]
TrentinoAltoAdige,
#[displaydoc("Umbria")]
#[serde(rename = "117:umbria", alias = "Umbria")]
Umbria,
#[displaydoc("Valle Daosta")]
#[serde(rename = "117:valle_daosta", alias = "Valle Daosta")]
ValleDaosta,
#[displaydoc("Veneto")]
#[serde(rename = "117:veneto", alias = "Veneto")]
Veneto,
}
#[derive(Debug, Display, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
#[allow(clippy::enum_variant_names)]
pub enum Netherlands {
#[displaydoc("Drenthe")]
#[serde(rename = "165:provincie_drenthe", alias = "Provincie Drenthe")]
Drenthe,
#[displaydoc("Flevoland")]
#[serde(rename = "165:provincie_flevoland", alias = "Provincie Flevoland")]
Flevoland,
#[displaydoc("Friesland")]
#[serde(rename = "165:provincie_friesland", alias = "Provincie Friesland")]
Friesland,
#[displaydoc("Gelderland")]
#[serde(rename = "165:provincie_gelderland", alias = "Provincie Gelderland")]
Gelderland,
#[displaydoc("Groningen")]
#[serde(rename = "165:provincie_groningen", alias = "Provincie Groningen")]
Groningen,
#[displaydoc("Limburg")]
#[serde(rename = "165:provincie_limburg", alias = "Provincie Limburg")]
Limburg,
#[displaydoc("Noord-Brabant")]
#[serde(rename = "165:provincie_noord-brabant", alias = "Provincie Noord-brabant")]
NoordBrabant,
#[displaydoc("Noord-Holland")]
#[serde(rename = "165:provincie_noord-holland", alias = "Provincie Noord-holland")]
NoordHolland,
#[displaydoc("Overijssel")]
#[serde(rename = "165:provincie_overijssel", alias = "Provincie Overijssel")]
Overijssel,
#[displaydoc("Utrecht")]
#[serde(rename = "165:provincie_utrecht", alias = "Provincie Utrecht")]
Utrecht,
#[displaydoc("Zeeland")]
#[serde(rename = "165:provincie_zeeland", alias = "Provincie Zeeland")]
Zeeland,
#[displaydoc("Zuid-Holland")]
#[serde(rename = "165:provincie_zuid-holland", alias = "Provincie Zuid-holland")]
ZuidHolland,
}
#[derive(Debug, Display, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
#[allow(clippy::enum_variant_names)]
pub enum UnitedKingdom {
#[displaydoc("Belfast")]
#[serde(rename = "243:belfast", alias = "Belfast")]
Belfast,
#[displaydoc("Cardiff")]
#[serde(rename = "243:cardiff", alias = "Cardiff")]
Cardiff,
#[displaydoc("Carlisle")]
#[serde(rename = "243:carlisle", alias = "Carlisle")]
Carlisle,
#[displaydoc("Derby")]
#[serde(rename = "243:derby", alias = "Derby")]
Derby,
#[displaydoc("East")]
#[serde(rename = "243:east", alias = "East")]
East,
#[displaydoc("East Of England")]
#[serde(rename = "243:east_of_england", alias = "East Of England")]
EastOfEngland,
#[displaydoc("Huddersfield")]
#[serde(rename = "243:huddersfield", alias = "Huddersfield")]
Huddersfield,
#[displaydoc("Leicester")]
#[serde(rename = "243:leicester", alias = "Leicester")]
Leicester,
#[displaydoc("Lincoln")]
#[serde(rename = "243:lincoln", alias = "Lincoln")]
Lincoln,
#[displaydoc("Llandrindod Wells")]
#[serde(rename = "243:llandrindod_wells", alias = "Llandrindod Wells")]
LlandrindodWells,
#[displaydoc("Llandudno")]
#[serde(rename = "243:llandudno", alias = "Llandudno")]
Llandudno,
#[displaydoc("London")]
#[serde(rename = "243:london", alias = "London")]
London,
#[displaydoc("Motherwell")]
#[serde(rename = "243:motherwell", alias = "Motherwell")]
Motherwell,
#[displaydoc("Newport")]
#[serde(rename = "243:newport", alias = "Newport")]
Newport,
#[displaydoc("North East")]
#[serde(rename = "243:north_east", alias = "North East")]
NorthEast,
#[displaydoc("North West")]
#[serde(rename = "243:north_west", alias = "North West")]
NorthWest,
#[displaydoc("Northampton")]
#[serde(rename = "243:northampton", alias = "Northampton")]
Northampton,
#[displaydoc("Nottingham")]
#[serde(rename = "243:nottingham", alias = "Nottingham")]
Nottingham,
#[displaydoc("Paisley")]
#[serde(rename = "243:paisley", alias = "Paisley")]
Paisley,
#[displaydoc("Romford")]
#[serde(rename = "243:romford", alias = "Romford")]
Romford,
#[displaydoc("Scotland")]
#[serde(rename = "243:scotland", alias = "Scotland")]
Scotland,
#[displaydoc("Scottish Islands")]
#[serde(rename = "243:scottish_islands", alias = "Scottish Islands")]
ScottishIslands,
#[displaydoc("Shetland Isles")]
#[serde(rename = "243:shetland_isles", alias = "Shetland Isles")]
ShetlandIsles,
#[displaydoc("South East")]
#[serde(rename = "243:south_east", alias = "South East")]
SouthEast,
#[displaydoc("South West")]
#[serde(rename = "243:south_west", alias = "South West")]
SouthWest,
#[displaydoc("Southend On Sea")]
#[serde(rename = "243:southend_on_sea", alias = "Southend On Sea")]
SouthendOnSea,
#[displaydoc("Stoke On Trent")]
#[serde(rename = "243:stoke_on_trent", alias = "Stoke On Trent")]
StokeOnTrent,
#[displaydoc("Sunderland")]
#[serde(rename = "243:sunderland", alias = "Sunderland")]
Sunderland,
#[displaydoc("Sutton")]
#[serde(rename = "243:sutton", alias = "Sutton")]
Sutton,
#[displaydoc("Swansea")]
#[serde(rename = "243:swansea", alias = "Swansea")]
Swansea,
#[displaydoc("Tweed")]
#[serde(rename = "243:tweed", alias = "Tweed")]
Tweed,
#[displaydoc("Uvbridge")]
#[serde(rename = "243:uvbridge", alias = "Uvbridge")]
Uvbridge,
#[displaydoc("West Midlands")]
#[serde(rename = "243:west_midlands", alias = "West Midlands")]
WestMidlands,
#[displaydoc("Wolverhampton")]
#[serde(rename = "243:wolverhampton", alias = "Wolverhampton")]
Wolverhampton,
#[displaydoc("Yorkshire And The Humber")]
#[serde(rename = "243:yorkshire_and_the_humber", alias = "Yorkshire And The Humber")]
YorkshireAndTheHumber,
}
#[derive(Debug, Display, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
#[allow(clippy::enum_variant_names)]
pub enum UnitedStates {
#[displaydoc("Alabama")]
#[serde(rename = "244:alabama", alias = "Alabama")]
Alabama,
#[displaydoc("Alaska")]
#[serde(rename = "244:alaska", alias = "Alaska")]
Alaska,
#[displaydoc("Arizona")]
#[serde(rename = "244:arizona", alias = "Arizona")]
Arizona,
#[displaydoc("Arkansas")]
#[serde(rename = "244:arkansas", alias = "Arkansas")]
Arkansas,
#[displaydoc("California")]
#[serde(rename = "244:california", alias = "California")]
California,
#[displaydoc("Colorado")]
#[serde(rename = "244:colorado", alias = "Colorado")]
Colorado,
#[displaydoc("Connecticut")]
#[serde(rename = "244:connecticut", alias = "Connecticut")]
Connecticut,
#[displaydoc("Delaware")]
#[serde(rename = "244:delaware", alias = "Delaware")]
Delaware,
#[displaydoc("District Of Columbia")]
#[serde(rename = "244:district_of_columbia", alias = "District Of Columbia")]
DistrictOfColumbia,
#[displaydoc("Florida")]
#[serde(rename = "244:florida", alias = "Florida")]
Florida,
#[displaydoc("Georgia")]
#[serde(rename = "244:georgia", alias = "Georgia")]
Georgia,
#[displaydoc("Hawaii")]
#[serde(rename = "244:hawaii", alias = "Hawaii")]
Hawaii,
#[displaydoc("Idaho")]
#[serde(rename = "244:idaho", alias = "Idaho")]
Idaho,
#[displaydoc("Illinois")]
#[serde(rename = "244:illinois", alias = "Illinois")]
Illinois,
#[displaydoc("Indiana")]
#[serde(rename = "244:indiana", alias = "Indiana")]
Indiana,
#[displaydoc("Iowa")]
#[serde(rename = "244:iowa", alias = "Iowa")]
Iowa,
#[displaydoc("Kansas")]
#[serde(rename = "244:kansas", alias = "Kansas")]
Kansas,
#[displaydoc("Kentucky")]
#[serde(rename = "244:kentucky", alias = "Kentucky")]
Kentucky,
#[displaydoc("Louisiana")]
#[serde(rename = "244:louisiana", alias = "Louisiana")]
Louisiana,
#[displaydoc("Maine")]
#[serde(rename = "244:maine", alias = "Maine")]
Maine,
#[displaydoc("Maryland")]
#[serde(rename = "244:maryland", alias = "Maryland")]
Maryland,
#[displaydoc("Massachusetts")]
#[serde(rename = "244:massachusetts", alias = "Massachusetts")]
Massachusetts,
#[displaydoc("Michigan")]
#[serde(rename = "244:michigan", alias = "Michigan")]
Michigan,
#[displaydoc("Minnesota")]
#[serde(rename = "244:minnesota", alias = "Minnesota")]
Minnesota,
#[displaydoc("Missouri")]
#[serde(rename = "244:missouri", alias = "Missouri")]
Missouri,
#[displaydoc("Montana")]
#[serde(rename = "244:montana", alias = "Montana")]
Montana,
#[displaydoc("Nebraska")]
#[serde(rename = "244:nebraska", alias = "Nebraska")]
Nebraska,
#[displaydoc("Nevada")]
#[serde(rename = "244:nevada", alias = "Nevada")]
Nevada,
#[displaydoc("New Hampshire")]
#[serde(rename = "244:new_hampshire", alias = "New Hampshire")]
NewHampshire,
#[displaydoc("New Jersey")]
#[serde(rename = "244:new_jersey", alias = "New Jersey")]
NewJersey,
#[displaydoc("New Mexico")]
#[serde(rename = "244:new_mexico", alias = "New Mexico")]
NewMexico,
#[displaydoc("New York")]
#[serde(rename = "244:new_york", alias = "New York")]
NewYork,
#[displaydoc("North Carolina")]
#[serde(rename = "244:north_carolina", alias = "North Carolina")]
NorthCarolina,
#[displaydoc("Ohio")]
#[serde(rename = "244:ohio", alias = "Ohio")]
Ohio,
#[displaydoc("Oklahoma")]
#[serde(rename = "244:oklahoma", alias = "Oklahoma")]
Oklahoma,
#[displaydoc("Oregon")]
#[serde(rename = "244:oregon", alias = "Oregon")]
Oregon,
#[displaydoc("Pennsylvania")]
#[serde(rename = "244:pennsylvania", alias = "Pennsylvania")]
Pennsylvania,
#[displaydoc("Rhode Island")]
#[serde(rename = "244:rhode_island", alias = "Rhode Island")]
RhodeIsland,
#[displaydoc("South Carolina")]
#[serde(rename = "244:south_carolina", alias = "South Carolina")]
SouthCarolina,
#[displaydoc("Tennessee")]
#[serde(rename = "244:tennessee", alias = "Tennessee")]
Tennessee,
#[displaydoc("Texas")]
#[serde(rename = "244:texas", alias = "Texas")]
Texas,
#[displaydoc("Utah")]
#[serde(rename = "244:utah", alias = "Utah")]
Utah,
#[displaydoc("Vermont")]
#[serde(rename = "244:vermont", alias = "Vermont")]
Vermont,
#[displaydoc("Virginia")]
#[serde(rename = "244:virginia", alias = "Virginia")]
Virginia,
#[displaydoc("Washington")]
#[serde(rename = "244:washington", alias = "Washington")]
Washington,
#[displaydoc("West Virginia")]
#[serde(rename = "244:west_virginia", alias = "West Virginia")]
WestVirginia,
#[displaydoc("Wisconsin")]
#[serde(rename = "244:wisconsin", alias = "Wisconsin")]
Wisconsin,
}
#[derive(Debug, Display, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
#[serde(untagged)]
pub enum Region {
#[displaydoc("Australia/{0}")]
Australia(Australia),
#[displaydoc("Belgium/{0}")]
Belgium(Belgium),
#[displaydoc("Denmark/{0}")]
Denmark(Denmark),
#[displaydoc("Italy/{0}")]
Italy(Italy),
#[displaydoc("Netherlands/{0}")]
Netherlands(Netherlands),
#[displaydoc("United Kingdom/{0}")]
UnitedKingdom(UnitedKingdom),
#[displaydoc("United States/{0}")]
UnitedStates(UnitedStates),
#[displaydoc("Unknown ({0})")]
Unknown(String),
}
impl From<Australia> for Region {
fn from(region: Australia) -> Self { Self::Australia(region) }
}
impl From<Belgium> for Region {
fn from(region: Belgium) -> Self { Self::Belgium(region) }
}
impl From<Denmark> for Region {
fn from(region: Denmark) -> Self { Self::Denmark(region) }
}
impl From<Italy> for Region {
fn from(region: Italy) -> Self { Self::Italy(region) }
}
impl From<Netherlands> for Region {
fn from(region: Netherlands) -> Self { Self::Netherlands(region) }
}
impl From<UnitedKingdom> for Region {
fn from(region: UnitedKingdom) -> Self { Self::UnitedKingdom(region) }
}
impl From<UnitedStates> for Region {
fn from(region: UnitedStates) -> Self { Self::UnitedStates(region) }
}