diff --git a/src/consts/mod.rs b/src/consts/mod.rs index b74e9c6..33d9400 100644 --- a/src/consts/mod.rs +++ b/src/consts/mod.rs @@ -12,5 +12,8 @@ pub use season::*; mod queue; pub use queue::*; +mod queue_type; +pub use queue_type::*; + mod team; -pub use team::*; \ No newline at end of file +pub use team::*; diff --git a/src/consts/queue_type.rs b/src/consts/queue_type.rs new file mode 100644 index 0000000..7b9697e --- /dev/null +++ b/src/consts/queue_type.rs @@ -0,0 +1,28 @@ +use std::fmt; + +#[derive(fmt::Debug, Copy, Clone)] +pub enum QueueType { + // League of Legends, Summoner's Rift (5v5), Ranked Solo Queue. + RankedSolo5x5, + // League of Legends, Summoner's Rift (5v5), Flex Queue. + RankedFlexSr, + // League of Legends, Twisted Treeline (3v3), Flex Queue. + RankedFlexTt, + // Ranked Teamfight Tactics. + RankedTft, +} + +impl QueueType { + const NAMES: [&'static str; 4] = [ + "RANKED_SOLO_5x5", + "RANKED_FLEX_SR", + "RANKED_FLEX_TT", + "RANKED_TFT", + ]; +} + +impl fmt::Display for QueueType { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + write!(f, "{}", Self::NAMES[*self as usize]) + } +}