use core::fmt::Display;
#[derive(Debug, Clone, Copy)]
pub enum UdpMode {
Udpin,
Udpout,
Udpcast,
}
#[derive(Debug, Clone)]
pub struct UdpConfig {
pub(crate) address: String,
pub(crate) mode: UdpMode,
}
impl UdpConfig {
pub fn new(address: String, mode: UdpMode) -> Self {
Self { address, mode }
}
}
impl Display for UdpConfig {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
let mode = match self.mode {
UdpMode::Udpin => "udpin",
UdpMode::Udpout => "udpout",
UdpMode::Udpcast => "udpcast",
};
write!(f, "{mode}:{}", self.address)
}
}