dfraw_json_parser 0.17.5

Library which parses Dwarf Fortress raw files into JSON
Documentation
use super::tokens::Biome;

/// A map of biome tokens to their respective strings.
pub static BIOME_TOKENS: phf::Map<&'static str, Biome> = phf::phf_map! {
    "MOUNTAIN" => Biome::Mountain,
    "MOUNTAINS" => Biome::Mountains,
    "GLACIER" => Biome::Glacier,
    "TUNDRA" => Biome::Tundra,
    "SWAMP_TEMPERATE_FRESHWATER" => Biome::SwampTemperateFreshwater,
    "SWAMP_TEMPERATE_SALTWATER" => Biome::SwampTemperateSaltwater,
    "MARSH_TEMPERATE_FRESHWATER" => Biome::MarshTemperateFreshwater,
    "MARSH_TEMPERATE_SALTWATER" => Biome::MarshTemperateSaltwater,
    "SWAMP_TROPICAL_FRESHWATER" => Biome::SwampTropicalFreshwater,
    "SWAMP_TROPICAL_SALTWATER" => Biome::SwampTropicalSaltwater,
    "SWAMP_MANGROVE" => Biome::SwampMangrove,
    "MARSH_TROPICAL_FRESHWATER" => Biome::MarshTropicalFreshwater,
    "MARSH_TROPICAL_SALTWATER" => Biome::MarshTropicalSaltwater,
    "FOREST_TAIGA" => Biome::ForestTaiga,
    "TAIGA" => Biome::Taiga,
    "FOREST_TEMPERATE_CONIFER" => Biome::ForestTemperateConifer,
    "FOREST_TEMPERATE_BROADLEAF" => Biome::ForestTemperateBroadleaf,
    "FOREST_TROPICAL_CONIFER" => Biome::ForestTropicalConifer,
    "FOREST_TROPICAL_DRY_BROADLEAF" => Biome::ForestTropicalDryBroadleaf,
    "FOREST_TROPICAL_MOIST_BROADLEAF" => Biome::ForestTropicalMoistBroadleaf,
    "GRASSLAND_TEMPERATE" => Biome::GrasslandTemperate,
    "SAVANNA_TEMPERATE" => Biome::SavannaTemperate,
    "SHRUBLAND_TEMPERATE" => Biome::ShrublandTemperate,
    "GRASSLAND_TROPICAL" => Biome::GrasslandTropical,
    "SAVANNA_TROPICAL" => Biome::SavannaTropical,
    "SHRUBLAND_TROPICAL" => Biome::ShrublandTropical,
    "DESERT_BADLAND" => Biome::DesertBadland,
    "DESERT_ROCK" => Biome::DesertRock,
    "DESERT_SAND" => Biome::DesertSand,
    "OCEAN_TROPICAL" => Biome::OceanTropical,
    "OCEAN_TEMPERATE" => Biome::OceanTemperate,
    "OCEAN_ARCTIC" => Biome::OceanArctic,
    "POOL_TEMPERATE_FRESHWATER" => Biome::PoolTemperateFreshwater,
    "POOL_TEMPERATE_BRACKISHWATER" => Biome::PoolTemperateBrackishwater,
    "POOL_TEMPERATE_SALTWATER" => Biome::PoolTemperateSaltwater,
    "POOL_TROPICAL_FRESHWATER" => Biome::PoolTropicalFreshwater,
    "POOL_TROPICAL_BRACKISHWATER" => Biome::PoolTropicalBrackishwater,
    "POOL_TROPICAL_SALTWATER" => Biome::PoolTropicalSaltwater,
    "LAKE_TEMPERATE_FRESHWATER" => Biome::LakeTemperateFreshwater,
    "LAKE_TEMPERATE_BRACKISHWATER" => Biome::LakeTemperateBrackishwater,
    "LAKE_TEMPERATE_SALTWATER" => Biome::LakeTemperateSaltwater,
    "LAKE_TROPICAL_FRESHWATER" => Biome::LakeTropicalFreshwater,
    "LAKE_TROPICAL_BRACKISHWATER" => Biome::LakeTropicalBrackishwater,
    "LAKE_TROPICAL_SALTWATER" => Biome::LakeTropicalSaltwater,
    "RIVER_TEMPERATE_FRESHWATER" => Biome::RiverTemperateFreshwater,
    "RIVER_TEMPERATE_BRACKISHWATER" => Biome::RiverTemperateBrackishwater,
    "RIVER_TEMPERATE_SALTWATER" => Biome::RiverTemperateSaltwater,
    "RIVER_TROPICAL_FRESHWATER" => Biome::RiverTropicalFreshwater,
    "RIVER_TROPICAL_BRACKISHWATER" => Biome::RiverTropicalBrackishwater,
    "RIVER_TROPICAL_SALTWATER" => Biome::RiverTropicalSaltwater,
    "SUBTERRANEAN_WATER" => Biome::SubterraneanWater,
    "SUBTERRANEAN_CHASM" => Biome::SubterraneanChasm,
    "SUBTERRANEAN_LAVA" => Biome::SubterraneanLava,
    "ALL_MAIN" => Biome::AllMain,
    "ANY_LAND" => Biome::AnyLand,
    "ANY_OCEAN" => Biome::AnyOcean,
    "ANY_LAKE" => Biome::AnyLake,
    "ANY_TEMPERATE_LAKE" => Biome::AnyTemperateLake,
    "ANY_TROPICAL_LAKE" => Biome::AnyTropicalLake,
    "ANY_RIVER" => Biome::AnyRiver,
    "ANY_TEMPERATE_RIVER" => Biome::AnyTemperateRiver,
    "ANY_TROPICAL_RIVER" => Biome::AnyTropicalRiver,
    "ANY_POOL" => Biome::AnyPool,
    "NOT_FREEZING" => Biome::NotFreezing,
    "ANY_TEMPERATE" => Biome::AnyTemperate,
    "ANY_TROPICAL" => Biome::AnyTropical,
    "ANY_FOREST" => Biome::AnyForest,
    "ANY_SHRUBLAND" => Biome::AnyShrubland,
    "ANY_GRASSLAND" => Biome::AnyGrassland,
    "ANY_SAVANNA" => Biome::AnySavanna,
    "ANY_TEMPERATE_FOREST" => Biome::AnyTemperateForest,
    "ANY_TROPICAL_FOREST" => Biome::AnyTropicalForest,
    "ANY_TEMPERATE_BROADLEAF" => Biome::AnyTemperateBroadleaf,
    "ANY_TROPICAL_BROADLEAF" => Biome::AnyTropicalBroadleaf,
    "ANY_WETLAND" => Biome::AnyWetland,
    "ANY_TEMPERATE_WETLAND" => Biome::AnyTemperateWetland,
    "ANY_TROPICAL_WETLAND" => Biome::AnyTropicalWetland,
    "ANY_TROPICAL_MARSH" => Biome::AnyTropicalMarsh,
    "ANY_TEMPERATE_MARSH" => Biome::AnyTemperateMarsh,
    "ANY_TROPICAL_SWAMP" => Biome::AnyTropicalSwamp,
    "ANY_TEMPERATE_SWAMP" => Biome::AnyTemperateSwamp,
    "ANY_DESERT" => Biome::AnyDesert,
};

impl std::fmt::Display for Biome {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        match self {
    Self::Mountain => write!(f, "Mountain"),
    Self::Mountains => write!(f, "Mountains"),
    Self::Glacier => write!(f, "Glacier"),
    Self::Tundra => write!(f, "Tundra"),
    Self::SwampTemperateFreshwater => write!(f, "Temperate Freshwater Swamp"),
    Self::SwampTemperateSaltwater => write!(f, "Temperate Saltwater Swamp"),
    Self::MarshTemperateFreshwater => write!(f, "Temperate Freshwater Marsh"),
    Self::MarshTemperateSaltwater => write!(f, "Temperate Saltwater Marsh"),
    Self::SwampTropicalFreshwater => write!(f, "Tropical Freshwater Swamp"),
    Self::SwampTropicalSaltwater => write!(f, "Tropical Saltwater Swamp"),
    Self::SwampMangrove => write!(f, "Mangrove Swamp"),
    Self::MarshTropicalFreshwater => write!(f, "Tropical Freshwater Marsh"),
    Self::MarshTropicalSaltwater => write!(f, "Tropical Saltwater Marsh"),
    Self::ForestTaiga => write!(f, "Taiga Forest"),
    Self::Taiga => write!(f, "Taiga"),
    Self::ForestTemperateConifer => write!(f, "Temperate Coniferous Forest"),
    Self::ForestTemperateBroadleaf => write!(f, "Temperate Broadleaf Forest"),
    Self::ForestTropicalConifer => write!(f, "Tropical Coniferous Forest"),
    Self::ForestTropicalDryBroadleaf => write!(f, "Tropical Dry Broadleaf Forest"),
    Self::ForestTropicalMoistBroadleaf => write!(f, "Tropical Moist Broadleaf Forest"),
    Self::GrasslandTemperate => write!(f, "Temperate Grassland"),
    Self::SavannaTemperate => write!(f, "Temperate Savanna"),
    Self::ShrublandTemperate => write!(f, "Temperate Shrubland"),
    Self::GrasslandTropical => write!(f, "Tropical Grassland"),
    Self::SavannaTropical => write!(f, "Tropical Savanna"),
    Self::ShrublandTropical => write!(f, "Tropical Shrubland"),
    Self::DesertBadland => write!(f, "Badlands"),
    Self::DesertRock => write!(f, "Rocky Wasteland"),
    Self::DesertSand => write!(f, "Sand Desert"),
    Self::OceanTropical => write!(f, "Tropical Ocean"),
    Self::OceanTemperate => write!(f, "Temperate Ocean"),
    Self::OceanArctic => write!(f, "Arctic Ocean"),
    Self::PoolTemperateFreshwater => write!(f, "Temperate Freshwater Pool"),
    Self::PoolTemperateBrackishwater => write!(f, "Temperate Brackish Pool"),
    Self::PoolTemperateSaltwater => write!(f, "Temperate Saltwater Pool"),
    Self::PoolTropicalFreshwater => write!(f, "Tropical Freshwater Pool"),
    Self::PoolTropicalBrackishwater => write!(f, "Tropical Brackish Pool"),
    Self::PoolTropicalSaltwater => write!(f, "Tropical Saltwater Pool"),
    Self::LakeTemperateFreshwater => write!(f, "Temperate Freshwater Lake"),
    Self::LakeTemperateBrackishwater => write!(f, "Temperate Brackish Lake"),
    Self::LakeTemperateSaltwater => write!(f, "Temperate Saltwater Lake"),
    Self::LakeTropicalFreshwater => write!(f, "Tropical Freshwater Lake"),
    Self::LakeTropicalBrackishwater => write!(f, "Tropical Brackish Lake"),
    Self::LakeTropicalSaltwater => write!(f, "Tropical Saltwater Lake"),
    Self::RiverTemperateFreshwater => write!(f, "Temperate Freshwater River"),
    Self::RiverTemperateBrackishwater => write!(f, "Temperate Brackish River"),
    Self::RiverTemperateSaltwater => write!(f, "Temperate Saltwater River"),
    Self::RiverTropicalFreshwater => write!(f, "Tropical Freshwater River"),
    Self::RiverTropicalBrackishwater => write!(f, "Tropical Brackish River"),
    Self::RiverTropicalSaltwater => write!(f, "Tropical Saltwater River"),
    Self::SubterraneanWater => write!(f, "Underground caverns (in water)"),
    Self::SubterraneanChasm => write!(f, "Underground caverns (out of water)"),
    Self::SubterraneanLava => write!(f, "Magma sea"),
    Self::AllMain => write!(f, "All biomes excluding pools, rivers, and underground features"),
    Self::AnyLand => write!(f, "All main biomes excluding oceans and lakes"),
    Self::AnyOcean => write!(f, "All ocean biomes"),
    Self::AnyLake => write!(f, "All lake biomes"),
    Self::AnyTemperateLake => write!(f, "All temperate lake biomes"),
    Self::AnyTropicalLake => write!(f, "All tropical lake biomes"),
    Self::AnyRiver => write!(f, "All river biomes"),
    Self::AnyTemperateRiver => write!(f, "All temperate river biomes"),
    Self::AnyTropicalRiver => write!(f, "All tropical river biomes"),
    Self::AnyPool => write!(f, "All pool biomes"),
    Self::NotFreezing => write!(f, "All land biomes excluding Mountain, Glacier, and Tundra"),
    Self::AnyTemperate => write!(f, "All Temperate land biomes - marshes, swamps, forests, grassland, savanna, and shrubland"),
    Self::AnyTropical => write!(f, "All Tropical land biomes - marshes, swamps (including Mangrove), forests, grassland, savanna, and shrubland"),
    Self::AnyForest => write!(f, "All Forest biomes (excluding Taiga)"),
    Self::AnyShrubland => write!(f, "Temperate and Tropical Shrubland"),
    Self::AnyGrassland => write!(f, "Temperate and Tropical Grassland"),
    Self::AnySavanna => write!(f, "Temperate and Tropical Savanna"),
    Self::AnyTemperateForest => write!(f, "Temperate Coniferous and Broadleaf Forests"),
    Self::AnyTropicalForest => write!(f, "Tropical Coniferous and Dry/Moist Broadleaf Forests"),
    Self::AnyTemperateBroadleaf => write!(f, "Temperate Broadleaf Forest, Grassland/Savanna/Shrubland, Swamps, and Marshes"),
    Self::AnyTropicalBroadleaf => write!(f, "Tropical Dry/Moist Broadleaf Forest, Grassland/Savanna/Shrubland, Swamps (including Mangrove), and Marshes"),
    Self::AnyWetland => write!(f, "All swamps and marshes"),
    Self::AnyTemperateWetland => write!(f, "All temperate swamps and marshes"),
    Self::AnyTropicalWetland => write!(f, "All tropical swamps and marshes"),
    Self::AnyTropicalMarsh => write!(f, "All tropical marshes"),
    Self::AnyTemperateMarsh => write!(f, "All temperate marshes"),
    Self::AnyTropicalSwamp => write!(f, "All tropical swamps (including Mangrove)"),
    Self::AnyTemperateSwamp => write!(f, "All temperate swamps"),
    Self::AnyDesert => write!(f, "Badlands, Rocky Wasteland, and Sand Desert"),
    Self::Unknown => write!(f, "Unknown"),
        }
    }
}