use crate::model::xal::enums::ThoroughfareNameType;
#[derive(Debug, Clone, PartialEq)]
pub struct ThoroughfareName {
content: String,
name_type: Option<ThoroughfareNameType>,
}
impl ThoroughfareName {
pub fn new(content: String) -> Self {
Self {
content,
name_type: None,
}
}
pub fn with_name_type(content: String, name_type: ThoroughfareNameType) -> Self {
Self {
content,
name_type: Some(name_type),
}
}
pub fn with_optional_name_type(
content: String,
name_type: Option<ThoroughfareNameType>,
) -> Self {
match name_type {
Some(name_type) => Self::with_name_type(content, name_type),
None => Self::new(content),
}
}
pub fn content(&self) -> &str {
&self.content
}
pub fn name_type(&self) -> Option<ThoroughfareNameType> {
self.name_type
}
}