use bytecodec::{ErrorKind, Result};
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct StreamId(u32);
impl StreamId {
pub fn new(id: u32) -> Result<Self> {
track_assert!(id <= 0xFF_FFFF, ErrorKind::InvalidInput; id);
Ok(StreamId(id))
}
pub fn value(self) -> u32 {
self.0
}
}
impl Default for StreamId {
fn default() -> Self {
StreamId(0)
}
}