diff options
Diffstat (limited to 'azalea-buf/src')
| -rw-r--r-- | azalea-buf/src/read.rs | 9 | ||||
| -rw-r--r-- | azalea-buf/src/write.rs | 6 |
2 files changed, 13 insertions, 2 deletions
diff --git a/azalea-buf/src/read.rs b/azalea-buf/src/read.rs index 771b917c..95dc79ac 100644 --- a/azalea-buf/src/read.rs +++ b/azalea-buf/src/read.rs @@ -135,6 +135,12 @@ where fn azalea_read_limited(buf: &mut Cursor<&[u8]>, limit: usize) -> Result<Self, BufReadError>; } +impl AzaleaRead for () { + fn azalea_read(_buf: &mut Cursor<&[u8]>) -> Result<Self, BufReadError> { + Ok(()) + } +} + impl AzaleaRead for i32 { fn azalea_read(buf: &mut Cursor<&[u8]>) -> Result<Self, BufReadError> { Ok(buf.read_i32::<BE>()?) @@ -142,9 +148,9 @@ impl AzaleaRead for i32 { } impl AzaleaReadVar for i32 { - // fast varints modified from https://github.com/luojia65/mc-varint/blob/master/src/lib.rs#L67 /// Read a single varint from the reader and return the value fn azalea_read_var(buf: &mut Cursor<&[u8]>) -> Result<Self, BufReadError> { + // fast varint impl based on https://github.com/luojia65/mc-varint/blob/master/src/lib.rs#L67 let mut buffer = [0]; let mut ans = 0; for i in 0..5 { @@ -159,7 +165,6 @@ impl AzaleaReadVar for i32 { } impl AzaleaReadVar for i64 { - // fast varints modified from https://github.com/luojia65/mc-varint/blob/master/src/lib.rs#L54 fn azalea_read_var(buf: &mut Cursor<&[u8]>) -> Result<Self, BufReadError> { let mut buffer = [0]; let mut ans = 0; diff --git a/azalea-buf/src/write.rs b/azalea-buf/src/write.rs index 7b9ad496..8c2d88ea 100644 --- a/azalea-buf/src/write.rs +++ b/azalea-buf/src/write.rs @@ -29,6 +29,12 @@ pub trait AzaleaWriteVar { fn azalea_write_var(&self, buf: &mut impl Write) -> io::Result<()>; } +impl AzaleaWrite for () { + fn azalea_write(&self, _buf: &mut impl Write) -> io::Result<()> { + Ok(()) + } +} + impl AzaleaWrite for i32 { fn azalea_write(&self, buf: &mut impl Write) -> io::Result<()> { WriteBytesExt::write_i32::<BigEndian>(buf, *self) |
