ReadExt

Trait ReadExt 

Source
pub trait ReadExt: Read {
Show 62 methods // Provided methods fn read_u8(&mut self) -> u8 { ... } fn read_u8_checked(&mut self) -> Result<u8> { ... } fn read_f32_ne(&mut self) -> f32 { ... } fn read_f32_ne_checked(&mut self) -> Result<f32> { ... } fn read_f32(&mut self) -> f32 { ... } fn read_f32_checked(&mut self) -> Result<f32> { ... } fn read_f32_le(&mut self) -> f32 { ... } fn read_f32_le_checked(&mut self) -> Result<f32> { ... } fn read_f64_ne(&mut self) -> f64 { ... } fn read_f64_ne_checked(&mut self) -> Result<f64> { ... } fn read_f64(&mut self) -> f64 { ... } fn read_f64_checked(&mut self) -> Result<f64> { ... } fn read_f64_le(&mut self) -> f64 { ... } fn read_f64_le_checked(&mut self) -> Result<f64> { ... } fn read_u16_ne(&mut self) -> u16 { ... } fn read_u16_ne_checked(&mut self) -> Result<u16> { ... } fn read_u16(&mut self) -> u16 { ... } fn read_u16_checked(&mut self) -> Result<u16> { ... } fn read_u16_le(&mut self) -> u16 { ... } fn read_u16_le_checked(&mut self) -> Result<u16> { ... } fn read_i16_ne(&mut self) -> i16 { ... } fn read_i16_ne_checked(&mut self) -> Result<i16> { ... } fn read_i16(&mut self) -> i16 { ... } fn read_i16_checked(&mut self) -> Result<i16> { ... } fn read_i16_le(&mut self) -> i16 { ... } fn read_i16_le_checked(&mut self) -> Result<i16> { ... } fn read_u32_ne(&mut self) -> u32 { ... } fn read_u32_ne_checked(&mut self) -> Result<u32> { ... } fn read_u32(&mut self) -> u32 { ... } fn read_u32_checked(&mut self) -> Result<u32> { ... } fn read_u32_le(&mut self) -> u32 { ... } fn read_u32_le_checked(&mut self) -> Result<u32> { ... } fn read_i32_ne(&mut self) -> i32 { ... } fn read_i32_ne_checked(&mut self) -> Result<i32> { ... } fn read_i32(&mut self) -> i32 { ... } fn read_i32_checked(&mut self) -> Result<i32> { ... } fn read_i32_le(&mut self) -> i32 { ... } fn read_i32_le_checked(&mut self) -> Result<i32> { ... } fn read_u64_ne(&mut self) -> u64 { ... } fn read_u64_ne_checked(&mut self) -> Result<u64> { ... } fn read_u64(&mut self) -> u64 { ... } fn read_u64_checked(&mut self) -> Result<u64> { ... } fn read_u64_le(&mut self) -> u64 { ... } fn read_u64_le_checked(&mut self) -> Result<u64> { ... } fn read_i64_ne(&mut self) -> i64 { ... } fn read_i64_ne_checked(&mut self) -> Result<i64> { ... } fn read_i64(&mut self) -> i64 { ... } fn read_i64_checked(&mut self) -> Result<i64> { ... } fn read_i64_le(&mut self) -> i64 { ... } fn read_i64_le_checked(&mut self) -> Result<i64> { ... } fn read_u128_ne(&mut self) -> u128 { ... } fn read_u128_ne_checked(&mut self) -> Result<u128> { ... } fn read_u128(&mut self) -> u128 { ... } fn read_u128_checked(&mut self) -> Result<u128> { ... } fn read_u128_le(&mut self) -> u128 { ... } fn read_u128_le_checked(&mut self) -> Result<u128> { ... } fn read_i128_ne(&mut self) -> i128 { ... } fn read_i128_ne_checked(&mut self) -> Result<i128> { ... } fn read_i128(&mut self) -> i128 { ... } fn read_i128_checked(&mut self) -> Result<i128> { ... } fn read_i128_le(&mut self) -> i128 { ... } fn read_i128_le_checked(&mut self) -> Result<i128> { ... }
}
Expand description

§Read extension

All methods at first pull n bytes from reader and then interprets them with specified endianess. Where n is size of type in bytes.

§Panics

If std::io::Read::read_exact will return an error, ALL methods that doesn’t end with _checked will panic. All _checked methods will return an error in that case.

§Provided methods:

  • read_*_ne - Native-endian
  • read_*_be - Big-endian
  • read_*_le - Little-endian

§Example

use io_ext::ReadExt;
 
let buf = b"\x00\x01\x20\x00";
let mut slice = &buf[..];
// Note: &[u8] implements Read trait

assert_eq!(slice.read_u16(), 1);
assert_eq!(slice.read_i16_le_checked().unwrap(), 0x20 as i16);

// You can handle error on *_checked methods. Others will panic in that canse.
assert!(slice.read_u8_checked().is_err());

// Would panic!
// assert!(slice.read_u8() == 0); 

Provided Methods§

Source

fn read_u8(&mut self) -> u8

Source

fn read_u8_checked(&mut self) -> Result<u8>

Source

fn read_f32_ne(&mut self) -> f32

Source

fn read_f32_ne_checked(&mut self) -> Result<f32>

Source

fn read_f32(&mut self) -> f32

Source

fn read_f32_checked(&mut self) -> Result<f32>

Source

fn read_f32_le(&mut self) -> f32

Source

fn read_f32_le_checked(&mut self) -> Result<f32>

Source

fn read_f64_ne(&mut self) -> f64

Source

fn read_f64_ne_checked(&mut self) -> Result<f64>

Source

fn read_f64(&mut self) -> f64

Source

fn read_f64_checked(&mut self) -> Result<f64>

Source

fn read_f64_le(&mut self) -> f64

Source

fn read_f64_le_checked(&mut self) -> Result<f64>

Source

fn read_u16_ne(&mut self) -> u16

Source

fn read_u16_ne_checked(&mut self) -> Result<u16>

Source

fn read_u16(&mut self) -> u16

Source

fn read_u16_checked(&mut self) -> Result<u16>

Source

fn read_u16_le(&mut self) -> u16

Source

fn read_u16_le_checked(&mut self) -> Result<u16>

Source

fn read_i16_ne(&mut self) -> i16

Source

fn read_i16_ne_checked(&mut self) -> Result<i16>

Source

fn read_i16(&mut self) -> i16

Source

fn read_i16_checked(&mut self) -> Result<i16>

Source

fn read_i16_le(&mut self) -> i16

Source

fn read_i16_le_checked(&mut self) -> Result<i16>

Source

fn read_u32_ne(&mut self) -> u32

Source

fn read_u32_ne_checked(&mut self) -> Result<u32>

Source

fn read_u32(&mut self) -> u32

Source

fn read_u32_checked(&mut self) -> Result<u32>

Source

fn read_u32_le(&mut self) -> u32

Source

fn read_u32_le_checked(&mut self) -> Result<u32>

Source

fn read_i32_ne(&mut self) -> i32

Source

fn read_i32_ne_checked(&mut self) -> Result<i32>

Source

fn read_i32(&mut self) -> i32

Source

fn read_i32_checked(&mut self) -> Result<i32>

Source

fn read_i32_le(&mut self) -> i32

Source

fn read_i32_le_checked(&mut self) -> Result<i32>

Source

fn read_u64_ne(&mut self) -> u64

Source

fn read_u64_ne_checked(&mut self) -> Result<u64>

Source

fn read_u64(&mut self) -> u64

Source

fn read_u64_checked(&mut self) -> Result<u64>

Source

fn read_u64_le(&mut self) -> u64

Source

fn read_u64_le_checked(&mut self) -> Result<u64>

Source

fn read_i64_ne(&mut self) -> i64

Source

fn read_i64_ne_checked(&mut self) -> Result<i64>

Source

fn read_i64(&mut self) -> i64

Source

fn read_i64_checked(&mut self) -> Result<i64>

Source

fn read_i64_le(&mut self) -> i64

Source

fn read_i64_le_checked(&mut self) -> Result<i64>

Source

fn read_u128_ne(&mut self) -> u128

Source

fn read_u128_ne_checked(&mut self) -> Result<u128>

Source

fn read_u128(&mut self) -> u128

Source

fn read_u128_checked(&mut self) -> Result<u128>

Source

fn read_u128_le(&mut self) -> u128

Source

fn read_u128_le_checked(&mut self) -> Result<u128>

Source

fn read_i128_ne(&mut self) -> i128

Source

fn read_i128_ne_checked(&mut self) -> Result<i128>

Source

fn read_i128(&mut self) -> i128

Source

fn read_i128_checked(&mut self) -> Result<i128>

Source

fn read_i128_le(&mut self) -> i128

Source

fn read_i128_le_checked(&mut self) -> Result<i128>

Implementors§

Source§

impl<R> ReadExt for R
where R: Read,