Skip to main content

nurtex_protocol/types/
known_pack.rs

1use nurtex_codec::Buffer;
2
3#[derive(Clone, Debug, PartialEq)]
4pub struct KnownPack {
5  pub namespace: String,
6  pub id: String,
7  pub version: String,
8}
9
10impl Buffer for KnownPack {
11  fn read_buf(buffer: &mut std::io::Cursor<&[u8]>) -> Option<Self> {
12    Some(Self {
13      namespace: String::read_buf(buffer)?,
14      id: String::read_buf(buffer)?,
15      version: String::read_buf(buffer)?,
16    })
17  }
18
19  fn write_buf(&self, buffer: &mut impl std::io::Write) -> std::io::Result<()> {
20    self.namespace.write_buf(buffer)?;
21    self.id.write_buf(buffer)?;
22    self.version.write_buf(buffer)?;
23    Ok(())
24  }
25}