bytey_byte_buffer 0.3.0

Bytey ByteBuffer code, use Bytey instead
Documentation
use crate::{
    byte_buffer::ByteBuffer,
    byte_buffer_read::ByteBufferRead,
    error::{ByteBufferError, Result},
};

impl<T: ByteBufferRead, E: ByteBufferRead> ByteBufferRead for std::result::Result<T, E> {
    #[inline]
    fn read_from_bytey_buffer(buffer: &mut ByteBuffer) -> Result<std::result::Result<T, E>> {
        Ok(match buffer.read::<u8>()? {
            1 => Ok(buffer.read::<T>()?),
            2 => Err(buffer.read::<E>()?),
            _ => {
                return Err(ByteBufferError::OtherError {
                    error: "Invalid Read to Result".to_owned(),
                })
            }
        })
    }

    #[inline]
    fn read_from_bytey_buffer_le(buffer: &mut ByteBuffer) -> Result<std::result::Result<T, E>> {
        Ok(match buffer.read_le::<u8>()? {
            1 => Ok(buffer.read_le::<T>()?),
            2 => Err(buffer.read_le::<E>()?),
            _ => {
                return Err(ByteBufferError::OtherError {
                    error: "Invalid Read to Result".to_owned(),
                })
            }
        })
    }

    #[inline]
    fn read_from_bytey_buffer_be(buffer: &mut ByteBuffer) -> Result<std::result::Result<T, E>> {
        Ok(match buffer.read_be::<u8>()? {
            1 => Ok(buffer.read_be::<T>()?),
            2 => Err(buffer.read_be::<E>()?),
            _ => {
                return Err(ByteBufferError::OtherError {
                    error: "Invalid Read to Result".to_owned(),
                })
            }
        })
    }
}

impl<E: ByteBufferRead> ByteBufferRead for std::result::Result<(), E> {
    #[inline]
    fn read_from_bytey_buffer(buffer: &mut ByteBuffer) -> Result<std::result::Result<(), E>> {
        Ok(match buffer.read::<u8>()? {
            1 => Ok(()),
            2 => Err(buffer.read::<E>()?),
            _ => {
                return Err(ByteBufferError::OtherError {
                    error: "Invalid Read to Result".to_owned(),
                })
            }
        })
    }

    #[inline]
    fn read_from_bytey_buffer_le(buffer: &mut ByteBuffer) -> Result<std::result::Result<(), E>> {
        Ok(match buffer.read_le::<u8>()? {
            1 => Ok(()),
            2 => Err(buffer.read_le::<E>()?),
            _ => {
                return Err(ByteBufferError::OtherError {
                    error: "Invalid Read to Result".to_owned(),
                })
            }
        })
    }

    #[inline]
    fn read_from_bytey_buffer_be(buffer: &mut ByteBuffer) -> Result<std::result::Result<(), E>> {
        Ok(match buffer.read_be::<u8>()? {
            1 => Ok(()),
            2 => Err(buffer.read_be::<E>()?),
            _ => {
                return Err(ByteBufferError::OtherError {
                    error: "Invalid Read to Result".to_owned(),
                })
            }
        })
    }
}