pub mod crc16;
pub use crc16::Crc16;
pub(crate) const CHECKSUM_LEN: usize = core::mem::size_of::<u16>();
pub trait Checksum {
fn calculate(&self, bytes: &[u8]) -> u16;
fn verify(&self, bytes: &[u8], expected: u16) -> bool {
self.calculate(bytes) == expected
}
}