use std::io;
pub type Result<T> = std::result::Result<T, Error>;
pub fn tkey_err<T>(s: &str) -> Result<T> {
std::result::Result::Err(Error::TkeyError(s.to_string()))
}
#[derive(thiserror::Error, Debug)]
pub enum Error {
#[error("serialport error")]
Serial(#[from] serialport::Error),
#[error("io error")]
Io(#[from] io::Error),
#[error("tkey frame header parse error")]
TkeySerialFrameHeaderParsingFailed(String),
#[error("tkey error: {0}")]
TkeyError(String),
}