use super::EnumStr;
use enum_map::Enum;
use serde::{Deserialize, Serialize};
#[derive(Enum, PartialEq, Eq, Clone, Copy, Hash, Serialize, Deserialize, Debug)]
pub enum Belief {
AncestorWorship,
DanceOfTheAurora,
DesertFolklore,
FaithHealers,
FertilityRites,
GodOfCraftsman,
GodOfTheOpenSky,
GodOfTheSea,
GodOfWar,
GoddessOfFestivals,
GoddessOfLove,
GoddessOfProtection,
GoddessOfTheHunt,
MessengerOfTheGods,
MonumentToTheGods,
OneWithNature,
OralTradition,
ReligiousIdols,
ReligiousSettlements,
SacredPath,
SacredWaters,
StoneCircles,
Asceticism,
Cathedrals,
ChoralMusic,
DivineInspiration,
FeedTheWorld,
Guruship,
HolyWarriors,
LiturgicalDrama,
Monasteries,
Mosques,
Pagodas,
PeaceGardens,
ReligiousArt,
ReligiousCenter,
ReligiousCommunity,
SwordsIntoPloughshares,
CeremonialBurial,
ChurchProperty,
InitiationRites,
InterfaithDialogue,
PapalPrimacy,
PeaceLoving,
Pilgrimage,
Tithe,
WorldChurch,
DefenderOfTheFaith,
HolyOrder,
ItinerantPreachers,
JustWar,
Messiah,
MissionaryZeal,
ReligiousTexts,
ReligiousUnity,
Reliquary,
}
impl EnumStr for Belief {
fn as_str(&self) -> &'static str {
match self {
Belief::AncestorWorship => "Ancestor Worship",
Belief::DanceOfTheAurora => "Dance of the Aurora",
Belief::DesertFolklore => "Desert Folklore",
Belief::FaithHealers => "Faith Healers",
Belief::FertilityRites => "Fertility Rites",
Belief::GodOfCraftsman => "God of Craftsman",
Belief::GodOfTheOpenSky => "God of the Open Sky",
Belief::GodOfTheSea => "God of the Sea",
Belief::GodOfWar => "God of War",
Belief::GoddessOfFestivals => "Goddess of Festivals",
Belief::GoddessOfLove => "Goddess of Love",
Belief::GoddessOfProtection => "Goddess of Protection",
Belief::GoddessOfTheHunt => "Goddess of the Hunt",
Belief::MessengerOfTheGods => "Messenger of the Gods",
Belief::MonumentToTheGods => "Monument to the Gods",
Belief::OneWithNature => "One with Nature",
Belief::OralTradition => "Oral Tradition",
Belief::ReligiousIdols => "Religious Idols",
Belief::ReligiousSettlements => "Religious Settlements",
Belief::SacredPath => "Sacred Path",
Belief::SacredWaters => "Sacred Waters",
Belief::StoneCircles => "Stone Circles",
Belief::Asceticism => "Asceticism",
Belief::Cathedrals => "Cathedrals",
Belief::ChoralMusic => "Choral Music",
Belief::DivineInspiration => "Divine inspiration",
Belief::FeedTheWorld => "Feed the World",
Belief::Guruship => "Guruship",
Belief::HolyWarriors => "Holy Warriors",
Belief::LiturgicalDrama => "Liturgical Drama",
Belief::Monasteries => "Monasteries",
Belief::Mosques => "Mosques",
Belief::Pagodas => "Pagodas",
Belief::PeaceGardens => "Peace Gardens",
Belief::ReligiousArt => "Religious Art",
Belief::ReligiousCenter => "Religious Center",
Belief::ReligiousCommunity => "Religious Community",
Belief::SwordsIntoPloughshares => "Swords into Ploughshares",
Belief::CeremonialBurial => "Ceremonial Burial",
Belief::ChurchProperty => "Church Property",
Belief::InitiationRites => "Initiation Rites",
Belief::InterfaithDialogue => "Interfaith Dialogue",
Belief::PapalPrimacy => "Papal Primacy",
Belief::PeaceLoving => "Peace Loving",
Belief::Pilgrimage => "Pilgrimage",
Belief::Tithe => "Tithe",
Belief::WorldChurch => "World Church",
Belief::DefenderOfTheFaith => "Defender of the Faith",
Belief::HolyOrder => "Holy Order",
Belief::ItinerantPreachers => "Itinerant Preachers",
Belief::JustWar => "Just War",
Belief::Messiah => "Messiah",
Belief::MissionaryZeal => "Missionary Zeal",
Belief::ReligiousTexts => "Religious Texts",
Belief::ReligiousUnity => "Religious Unity",
Belief::Reliquary => "Reliquary",
}
}
fn from_str(s: &str) -> Self {
match s {
"Ancestor Worship" => Belief::AncestorWorship,
"Dance of the Aurora" => Belief::DanceOfTheAurora,
"Desert Folklore" => Belief::DesertFolklore,
"Faith Healers" => Belief::FaithHealers,
"Fertility Rites" => Belief::FertilityRites,
"God of Craftsman" => Belief::GodOfCraftsman,
"God of the Open Sky" => Belief::GodOfTheOpenSky,
"God of the Sea" => Belief::GodOfTheSea,
"God of War" => Belief::GodOfWar,
"Goddess of Festivals" => Belief::GoddessOfFestivals,
"Goddess of Love" => Belief::GoddessOfLove,
"Goddess of Protection" => Belief::GoddessOfProtection,
"Goddess of the Hunt" => Belief::GoddessOfTheHunt,
"Messenger of the Gods" => Belief::MessengerOfTheGods,
"Monument to the Gods" => Belief::MonumentToTheGods,
"One with Nature" => Belief::OneWithNature,
"Oral Tradition" => Belief::OralTradition,
"Religious Idols" => Belief::ReligiousIdols,
"Religious Settlements" => Belief::ReligiousSettlements,
"Sacred Path" => Belief::SacredPath,
"Sacred Waters" => Belief::SacredWaters,
"Stone Circles" => Belief::StoneCircles,
"Asceticism" => Belief::Asceticism,
"Cathedrals" => Belief::Cathedrals,
"Choral Music" => Belief::ChoralMusic,
"Divine inspiration" => Belief::DivineInspiration,
"Feed the World" => Belief::FeedTheWorld,
"Guruship" => Belief::Guruship,
"Holy Warriors" => Belief::HolyWarriors,
"Liturgical Drama" => Belief::LiturgicalDrama,
"Monasteries" => Belief::Monasteries,
"Mosques" => Belief::Mosques,
"Pagodas" => Belief::Pagodas,
"Peace Gardens" => Belief::PeaceGardens,
"Religious Art" => Belief::ReligiousArt,
"Religious Center" => Belief::ReligiousCenter,
"Religious Community" => Belief::ReligiousCommunity,
"Swords into Ploughshares" => Belief::SwordsIntoPloughshares,
"Ceremonial Burial" => Belief::CeremonialBurial,
"Church Property" => Belief::ChurchProperty,
"Initiation Rites" => Belief::InitiationRites,
"Interfaith Dialogue" => Belief::InterfaithDialogue,
"Papal Primacy" => Belief::PapalPrimacy,
"Peace Loving" => Belief::PeaceLoving,
"Pilgrimage" => Belief::Pilgrimage,
"Tithe" => Belief::Tithe,
"World Church" => Belief::WorldChurch,
"Defender of the Faith" => Belief::DefenderOfTheFaith,
"Holy Order" => Belief::HolyOrder,
"Itinerant Preachers" => Belief::ItinerantPreachers,
"Just War" => Belief::JustWar,
"Messiah" => Belief::Messiah,
"Missionary Zeal" => Belief::MissionaryZeal,
"Religious Texts" => Belief::ReligiousTexts,
"Religious Unity" => Belief::ReligiousUnity,
"Reliquary" => Belief::Reliquary,
_ => panic!("Invalid value for {}: {{}}", s),
}
}
}