pub struct Packet<T: AsRef<[u8]>> { /* private fields */ }Implementations§
Source§impl<T: AsRef<[u8]>> Packet<T>
impl<T: AsRef<[u8]>> Packet<T>
pub const HEADER_SIZE: usize = 3usize
pub const CHECKSUM_SIZE: usize = 2usize
pub const OFFSET_SIZE: usize = 2usize
pub const MAX_PAYLOAD_SIZE: usize = 1_024usize
pub const MAX_MSG_ID_SIZE: usize = 15usize
pub const BASE_PACKET_SIZE: usize = 5usize
pub const MAX_PACKET_SIZE: usize = 1_044usize
pub const CRC16_CCITT_FALSE: Algorithm<u16>
pub fn new_unchecked(buffer: T) -> Packet<T>
pub fn new(buffer: T) -> Result<Packet<T>, Error>
pub fn check_len(&self) -> Result<(), Error>
Sourcepub fn check_payload_length(&self) -> Result<(), Error>
pub fn check_payload_length(&self) -> Result<(), Error>
Checks that the buffer contains enough bytes to read both the message ID and the payload bytes
pub fn check_checksum(&self) -> Result<(), Error>
pub fn wire_size(&self) -> Result<usize, Error>
pub fn into_inner(self) -> T
Sourcepub fn buffer_len(n_msg_id_bytes: usize, n_payload_bytes: usize) -> usize
pub fn buffer_len(n_msg_id_bytes: usize, n_payload_bytes: usize) -> usize
Return the length of a buffer required to hold a message
with a payload length of n_msg_id_bytes + n_payload_bytes.
pub fn data_length(&self) -> u16
pub fn typ_raw(&self) -> u8
pub fn typ(&self) -> MessageType
pub fn internal(&self) -> bool
pub fn offset(&self) -> bool
pub fn id_length_raw(&self) -> u8
pub fn id_length(&self) -> Result<usize, Error>
pub fn response(&self) -> bool
pub fn acknum(&self) -> u8
pub fn checksum(&self) -> Result<u16, Error>
pub fn compute_checksum(&self) -> Result<u16, Error>
Source§impl<T: AsRef<[u8]> + AsMut<[u8]>> Packet<T>
impl<T: AsRef<[u8]> + AsMut<[u8]>> Packet<T>
pub fn set_data_length(&mut self, value: u16) -> Result<(), Error>
pub fn set_typ(&mut self, value: MessageType)
pub fn set_internal(&mut self, value: bool)
pub fn set_offset(&mut self, value: bool)
pub fn set_id_length(&mut self, value: u8) -> Result<(), Error>
pub fn set_response(&mut self, value: bool)
pub fn set_acknum(&mut self, value: u8)
pub fn msg_id_mut(&mut self) -> Result<&mut [u8], Error>
pub fn payload_mut(&mut self) -> Result<&mut [u8], Error>
pub fn set_checksum(&mut self, value: u16) -> Result<(), Error>
Trait Implementations§
Auto Trait Implementations§
impl<T> Freeze for Packet<T>where
T: Freeze,
impl<T> RefUnwindSafe for Packet<T>where
T: RefUnwindSafe,
impl<T> Send for Packet<T>where
T: Send,
impl<T> Sync for Packet<T>where
T: Sync,
impl<T> Unpin for Packet<T>where
T: Unpin,
impl<T> UnwindSafe for Packet<T>where
T: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more