pub mod prelude {
pub use crate::bus_enums::{BusCategory, BusFeature, BusLoad, BusType, Operator};
}
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Eq, Deserialize, Serialize, Default)]
pub enum Operator {
#[serde(rename = "SBST")]
Sbst,
#[serde(rename = "SMRT")]
Smrt,
#[serde(rename = "TTS")]
Tts,
#[serde(rename = "GAS")]
Gas,
#[default]
#[serde(other)]
Unknown,
}
#[derive(Debug, Clone, PartialEq, PartialOrd, Deserialize, Serialize, Default)]
#[serde(rename_all = "PascalCase")]
pub enum BusType {
#[serde(rename = "SD")]
SingleDecker,
#[serde(rename = "DD")]
DoubleDecker,
#[serde(rename = "BD")]
Bendy,
#[default]
#[serde(other)]
Unknown,
}
#[derive(Debug, Clone, PartialEq, PartialOrd, Deserialize, Serialize, Default)]
pub enum BusLoad {
#[serde(rename = "SEA")]
SeatsAvailable,
#[serde(rename = "SDA")]
StandingAvailable,
#[serde(rename = "LSD")]
LimitedStanding,
#[default]
#[serde(other)]
Unknown,
}
#[derive(Debug, Clone, PartialEq, PartialOrd, Deserialize, Serialize, Default)]
pub enum BusFeature {
#[serde(rename = "WAB")]
WheelChairAccessible,
#[default]
#[serde(other)]
Unknown,
}
#[derive(Debug, Clone, PartialEq, PartialOrd, Deserialize, Serialize, Default)]
pub enum BusCategory {
#[serde(alias = "EXPRESS")]
Express,
#[serde(alias = "FEEDER")]
Feeder,
#[serde(alias = "INDUSTRIAL")]
Industrial,
#[serde(alias = "TOWNLINK")]
TownLink,
#[serde(alias = "TRUNK")]
Trunk,
#[serde(alias = "2-TIER FLAT FARE")]
TwoTierFlatFare,
#[serde(alias = "FLATFEE")]
FlatFee,
#[serde(alias = "NIGHT SERVICE")]
NightService,
#[serde(alias = "CITY_LINK")]
CityLink,
#[serde(alias = "FLAT FARE $2.00")]
FlatFareTwoDollar,
#[default]
#[serde(other)]
Unknown,
}