use {
aeronet_transport::{
lane::{LaneIndex, LaneKind},
min_size::MinSize,
},
bevy_replicon::prelude::*,
};
#[must_use]
pub const fn to_lane_kind(channel_kind: ChannelKind) -> LaneKind {
match channel_kind {
ChannelKind::Unreliable => LaneKind::UnreliableUnordered,
ChannelKind::Unordered => LaneKind::ReliableUnordered,
ChannelKind::Ordered => LaneKind::ReliableOrdered,
}
}
#[must_use]
pub fn to_channel_id(lane_index: LaneIndex) -> Option<u8> {
u8::try_from(lane_index.0.0).ok()
}
#[must_use]
pub fn to_lane_index(channel_id: u8) -> LaneIndex {
LaneIndex(MinSize::from(channel_id))
}