Int16 support

This commit is contained in:
HagaiHargil committed 2020-12-08 13:33:25 +02:00
1 parent fc80c5e3dd
commit 9788085786
3 files changed
+83 -8

No files matched your search

+18
View File
@@ -59,6 +59,24 @@ pub trait EndianReader: Read {
})
}
#[inline(always)]
fn read_i16_into(&mut self, buffer: &mut [i16]) -> Result<(), io::Error> {
self.read_exact(bytecast::i16_as_ne_mut_bytes(buffer))?;
match self.byte_order() {
ByteOrder::LittleEndian => {
for n in buffer {
*n = i16::from_le(*n);
}
}
ByteOrder::BigEndian => {
for n in buffer {
*n = i16::from_be(*n);
}
}
}
Ok(())
}
/// Reads an u32
#[inline(always)]
fn read_u32(&mut self) -> Result<u32, io::Error> {