1use {
2 std,
3 std::io::Read,
4
5 bite::BiteReadExpandedExt,
6 bite::LittleEndian,
7};
8
9
10
11pub trait BiteReadExt: Read {
12 #[inline] fn read_u8 (&mut self) -> Result< u8, std::io::Error> { BiteReadExpandedExt::read_u8 (self) }
13 #[inline] fn read_i8 (&mut self) -> Result< i8, std::io::Error> { BiteReadExpandedExt::read_i8 (self) }
14 #[inline] fn read_u16 (&mut self) -> Result< u16, std::io::Error> { BiteReadExpandedExt::read_u16 ::<LittleEndian>(self) }
15 #[inline] fn read_i16 (&mut self) -> Result< i16, std::io::Error> { BiteReadExpandedExt::read_i16 ::<LittleEndian>(self) }
16 #[inline] fn read_u24 (&mut self) -> Result< u32, std::io::Error> { BiteReadExpandedExt::read_u24 ::<LittleEndian>(self) }
17 #[inline] fn read_i24 (&mut self) -> Result< i32, std::io::Error> { BiteReadExpandedExt::read_i24 ::<LittleEndian>(self) }
18 #[inline] fn read_u32 (&mut self) -> Result< u32, std::io::Error> { BiteReadExpandedExt::read_u32 ::<LittleEndian>(self) }
19 #[inline] fn read_i32 (&mut self) -> Result< i32, std::io::Error> { BiteReadExpandedExt::read_i32 ::<LittleEndian>(self) }
20 #[inline] fn read_u64 (&mut self) -> Result< u64, std::io::Error> { BiteReadExpandedExt::read_u64 ::<LittleEndian>(self) }
21 #[inline] fn read_i64 (&mut self) -> Result< i64, std::io::Error> { BiteReadExpandedExt::read_i64 ::<LittleEndian>(self) }
22 #[inline] fn read_u128 (&mut self) -> Result< u128, std::io::Error> { BiteReadExpandedExt::read_u128 ::<LittleEndian>(self) }
23 #[inline] fn read_i128 (&mut self) -> Result< i128, std::io::Error> { BiteReadExpandedExt::read_i128 ::<LittleEndian>(self) }
24 #[inline] fn read_uint (&mut self, bytes: usize) -> Result< u64, std::io::Error> { BiteReadExpandedExt::read_uint ::<LittleEndian>(self, bytes) }
25 #[inline] fn read_int (&mut self, bytes: usize) -> Result< i64, std::io::Error> { BiteReadExpandedExt::read_int ::<LittleEndian>(self, bytes) }
26 #[inline] fn read_uint128 (&mut self, bytes: usize) -> Result< u128, std::io::Error> { BiteReadExpandedExt::read_uint128 ::<LittleEndian>(self, bytes) }
27 #[inline] fn read_int128 (&mut self, bytes: usize) -> Result< i128, std::io::Error> { BiteReadExpandedExt::read_int128 ::<LittleEndian>(self, bytes) }
28 #[inline] fn read_f32 (&mut self) -> Result< f32, std::io::Error> { BiteReadExpandedExt::read_f32 ::<LittleEndian>(self) }
29 #[inline] fn read_f64 (&mut self) -> Result< f64, std::io::Error> { BiteReadExpandedExt::read_f64 ::<LittleEndian>(self) }
30
31 #[inline] fn read_slice_u16 (&mut self, values: &mut [u16]) -> Result< (), std::io::Error> { BiteReadExpandedExt::read_slice_u16 ::<LittleEndian>(self, values) }
32 #[inline] fn read_slice_i16 (&mut self, values: &mut [i16]) -> Result< (), std::io::Error> { BiteReadExpandedExt::read_slice_i16 ::<LittleEndian>(self, values) }
33 #[inline] fn read_slice_u32 (&mut self, values: &mut [u32]) -> Result< (), std::io::Error> { BiteReadExpandedExt::read_slice_u32 ::<LittleEndian>(self, values) }
34 #[inline] fn read_slice_i32 (&mut self, values: &mut [i32]) -> Result< (), std::io::Error> { BiteReadExpandedExt::read_slice_i32 ::<LittleEndian>(self, values) }
35 #[inline] fn read_slice_u64 (&mut self, values: &mut [u64]) -> Result< (), std::io::Error> { BiteReadExpandedExt::read_slice_u64 ::<LittleEndian>(self, values) }
36 #[inline] fn read_slice_i64 (&mut self, values: &mut [i64]) -> Result< (), std::io::Error> { BiteReadExpandedExt::read_slice_i64 ::<LittleEndian>(self, values) }
37 #[inline] fn read_slice_u128(&mut self, values: &mut [u128]) -> Result< (), std::io::Error> { BiteReadExpandedExt::read_slice_u128::<LittleEndian>(self, values) }
38 #[inline] fn read_slice_i128(&mut self, values: &mut [i128]) -> Result< (), std::io::Error> { BiteReadExpandedExt::read_slice_i128::<LittleEndian>(self, values) }
39 #[inline] fn read_slice_f32 (&mut self, values: &mut [f32]) -> Result< (), std::io::Error> { BiteReadExpandedExt::read_slice_f32 ::<LittleEndian>(self, values) }
40 #[inline] fn read_slice_f64 (&mut self, values: &mut [f64]) -> Result< (), std::io::Error> { BiteReadExpandedExt::read_slice_f64 ::<LittleEndian>(self, values) }
41
42 #[inline] fn read_framed (&mut self) -> Result<Vec<u8>, std::io::Error> { BiteReadExpandedExt::read_framed ::<LittleEndian>(self) }
43 #[inline] fn read_framed_max(&mut self, maximum: usize) -> Result<Vec<u8>, std::io::Error> { BiteReadExpandedExt::read_framed_max::<LittleEndian>(self, maximum) }
44}
45
46impl<T> BiteReadExt for T where T: Read + ?Sized { }