poke_data/models/
region.rs1use crate::models::localized_names::LocalizedStrings;
2use crate::traits::has_identifier::HasIdentifier;
3use crate::traits::has_localized_names::HasLocalizedNames;
4use serde::{Deserialize, Serialize};
5
6pub type RegionId = u16;
7
8#[derive(Debug, Clone, Serialize, Deserialize)]
9pub struct Region {
10 pub id: RegionId,
11 pub identifier: String,
12 pub names: LocalizedStrings,
13}
14
15impl HasIdentifier for Region {
16 fn identifier(&self) -> &str {
17 &self.identifier
18 }
19}
20
21impl HasLocalizedNames for Region {
22 fn localized_names(&self) -> &LocalizedStrings {
23 &self.names
24 }
25}