#[cfg(feature = "tokio")]
mod mdns_client_stream;
#[cfg(feature = "tokio")]
mod mdns_stream;
#[cfg(feature = "tokio")]
pub use self::mdns_client_stream::MdnsClientStream;
#[cfg(feature = "tokio")]
pub use self::mdns_stream::{MDNS_IPV4, MDNS_IPV6, MdnsStream};
#[derive(Clone, Copy, Debug, Eq, PartialEq)]
pub enum MdnsQueryType {
OneShot,
Continuous,
OneShotJoin,
Passive,
}
impl MdnsQueryType {
pub fn sender(self) -> bool {
match self {
Self::Passive => false,
Self::OneShot | Self::OneShotJoin => true,
Self::Continuous => true,
}
}
pub fn bind_on_5353(self) -> bool {
match self {
Self::OneShot | Self::OneShotJoin | Self::Passive => false,
Self::Continuous => true,
}
}
pub fn join_multicast(self) -> bool {
match self {
Self::OneShot => false,
Self::Continuous | Self::OneShotJoin | Self::Passive => true,
}
}
}