use core::marker::PhantomData;
use core::net::IpAddr;
#[doc(alias = "RipCommandType")]
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum RipCommand {
Request,
Response,
}
#[doc(alias = "RIP")]
#[doc(alias = "RIPv2")]
#[doc(alias = "RIPng")]
#[doc(alias = "RFC 2453")]
#[doc(alias = "RFC2453")]
#[doc(alias = "RFC 2080")]
#[doc(alias = "RFC2080")]
#[doc(alias = "REQUEST")]
#[doc(alias = "RESPONSE")]
#[doc(alias = "PREFIX")]
#[doc(alias = "METRIC")]
#[doc(alias = "NEXTHOP")]
#[doc(alias = "TAG")]
#[derive(Debug, Clone, PartialEq, Eq, Default)]
pub struct RipSpec<'a> {
pub command: Option<RipCommand>,
pub prefix: Option<IpAddr>,
pub metric: Option<u32>,
pub nexthop: Option<IpAddr>,
pub tag: Option<u16>,
pub _marker: PhantomData<&'a ()>,
}