use enum_map::Enum;
use serde::{Deserialize, Serialize};
#[derive(Enum, PartialEq, Eq, Clone, Copy, Hash, Serialize, Deserialize, Debug)]
pub enum NaturalWonder {
GreatBarrierReef,
OldFaithful,
ElDorado,
FountainOfYouth,
GrandMesa,
MountFuji,
Krakatoa,
RockOfGibraltar,
CerroDePotosi,
BarringerCrater,
MountKailash,
MountSinai,
SriPada,
Uluru,
KingSolomonsMines,
LakeVictoria,
MountKilimanjaro,
}
impl NaturalWonder {
pub fn as_str(&self) -> &'static str {
match self {
NaturalWonder::GreatBarrierReef => "Great Barrier Reef",
NaturalWonder::OldFaithful => "Old Faithful",
NaturalWonder::ElDorado => "El Dorado",
NaturalWonder::FountainOfYouth => "Fountain of Youth",
NaturalWonder::GrandMesa => "Grand Mesa",
NaturalWonder::MountFuji => "Mount Fuji",
NaturalWonder::Krakatoa => "Krakatoa",
NaturalWonder::RockOfGibraltar => "Rock of Gibraltar",
NaturalWonder::CerroDePotosi => "Cerro de Potosi",
NaturalWonder::BarringerCrater => "Barringer Crater",
NaturalWonder::MountKailash => "Mount Kailash",
NaturalWonder::MountSinai => "Mount Sinai",
NaturalWonder::SriPada => "Sri Pada",
NaturalWonder::Uluru => "Uluru",
NaturalWonder::KingSolomonsMines => "King Solomon's Mines",
NaturalWonder::LakeVictoria => "Lake Victoria",
NaturalWonder::MountKilimanjaro => "Mount Kilimanjaro",
}
}
}