forked from lavina/lavina
32 lines
684 B
Rust
32 lines
684 B
Rust
|
use super::*;
|
||
|
use std::fmt;
|
||
|
use crate::core::player::PlayerId;
|
||
|
|
||
|
#[derive(Clone, Debug, PartialEq, Eq)]
|
||
|
pub enum Prefix {
|
||
|
Empty,
|
||
|
}
|
||
|
|
||
|
impl fmt::Display for Prefix {
|
||
|
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
||
|
match self {
|
||
|
Prefix::Empty => write!(f, ""),
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
#[derive(Clone, Debug, PartialEq, Eq)]
|
||
|
pub struct PrefixedNick {
|
||
|
pub prefix: Prefix,
|
||
|
pub nick: Str,
|
||
|
}
|
||
|
|
||
|
impl PrefixedNick {
|
||
|
pub fn from_str(nick: Str) -> PrefixedNick {
|
||
|
PrefixedNick { prefix: Prefix::Empty, nick }
|
||
|
}
|
||
|
|
||
|
pub fn from_player_id(id: PlayerId) -> PrefixedNick {
|
||
|
PrefixedNick { prefix: Prefix::Empty, nick: id.into_inner() }
|
||
|
}
|
||
|
}
|