use std::io::Result;
use std::io::Write;
use crate::util::UncheckedSlice;
pub trait WriteExt: Write {
#[inline(always)]
unsafe fn write_unchecked(&mut self, buffer: &[u8], start_index: usize, count: usize) -> Result<usize> {
let source = unsafe { UncheckedSlice::subslice(buffer, start_index, count) };
self.write(source)
}
#[inline(always)]
unsafe fn write_all_unchecked(&mut self, buffer: &[u8], start_index: usize, count: usize) -> Result<()> {
let source = unsafe { UncheckedSlice::subslice(buffer, start_index, count) };
self.write_all(source)
}
}
impl<T> WriteExt for T where T: Write + ?Sized {}