chore: macros

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2025-10-19 12:57:47 +01:00
parent 8120690caa
commit e3e41999a6
6 changed files with 171 additions and 613 deletions

View File

@@ -216,7 +216,7 @@ pub trait PtpDeserialize: Sized {
fn try_read_ptp<R: Read>(cur: &mut R) -> io::Result<Self>;
}
macro_rules! impl_ptp_ser {
macro_rules! ptp_ser {
($ty:ty, $read_fn:ident, $write_fn:ident) => {
impl PtpSerialize for $ty {
fn try_into_ptp(&self) -> io::Result<Vec<u8>> {
@@ -232,7 +232,7 @@ macro_rules! impl_ptp_ser {
};
}
macro_rules! impl_ptp_de {
macro_rules! ptp_de {
($ty:ty, $read_fn:ident, $write_fn:ident) => {
impl PtpDeserialize for $ty {
fn try_from_ptp(buf: &[u8]) -> io::Result<Self> {
@@ -249,38 +249,38 @@ macro_rules! impl_ptp_de {
};
}
impl_ptp_ser!(u8, read_ptp_u8, write_ptp_u8);
impl_ptp_de!(u8, read_ptp_u8, write_ptp_u8);
impl_ptp_ser!(i8, read_ptp_i8, write_ptp_i8);
impl_ptp_de!(i8, read_ptp_i8, write_ptp_i8);
impl_ptp_ser!(u16, read_ptp_u16, write_ptp_u16);
impl_ptp_de!(u16, read_ptp_u16, write_ptp_u16);
impl_ptp_ser!(i16, read_ptp_i16, write_ptp_i16);
impl_ptp_de!(i16, read_ptp_i16, write_ptp_i16);
impl_ptp_ser!(u32, read_ptp_u32, write_ptp_u32);
impl_ptp_de!(u32, read_ptp_u32, write_ptp_u32);
impl_ptp_ser!(i32, read_ptp_i32, write_ptp_i32);
impl_ptp_de!(i32, read_ptp_i32, write_ptp_i32);
impl_ptp_ser!(u64, read_ptp_u64, write_ptp_u64);
impl_ptp_de!(u64, read_ptp_u64, write_ptp_u64);
impl_ptp_ser!(i64, read_ptp_i64, write_ptp_i64);
impl_ptp_de!(i64, read_ptp_i64, write_ptp_i64);
impl_ptp_ser!(&str, read_ptp_str, write_ptp_str);
impl_ptp_ser!(String, read_ptp_str, write_ptp_str);
impl_ptp_de!(String, read_ptp_str, write_ptp_str);
impl_ptp_ser!(Vec<u8>, read_ptp_u8_vec, write_ptp_u8_vec);
impl_ptp_de!(Vec<u8>, read_ptp_u8_vec, write_ptp_u8_vec);
impl_ptp_ser!(Vec<i8>, read_ptp_i8_vec, write_ptp_i8_vec);
impl_ptp_de!(Vec<i8>, read_ptp_i8_vec, write_ptp_i8_vec);
impl_ptp_ser!(Vec<u16>, read_ptp_u16_vec, write_ptp_u16_vec);
impl_ptp_de!(Vec<u16>, read_ptp_u16_vec, write_ptp_u16_vec);
impl_ptp_ser!(Vec<i16>, read_ptp_i16_vec, write_ptp_i16_vec);
impl_ptp_de!(Vec<i16>, read_ptp_i16_vec, write_ptp_i16_vec);
impl_ptp_ser!(Vec<u32>, read_ptp_u32_vec, write_ptp_u32_vec);
impl_ptp_de!(Vec<u32>, read_ptp_u32_vec, write_ptp_u32_vec);
impl_ptp_ser!(Vec<i32>, read_ptp_i32_vec, write_ptp_i32_vec);
impl_ptp_de!(Vec<i32>, read_ptp_i32_vec, write_ptp_i32_vec);
impl_ptp_ser!(Vec<u64>, read_ptp_u64_vec, write_ptp_u64_vec);
impl_ptp_de!(Vec<u64>, read_ptp_u64_vec, write_ptp_u64_vec);
impl_ptp_ser!(Vec<i64>, read_ptp_i64_vec, write_ptp_i64_vec);
impl_ptp_de!(Vec<i64>, read_ptp_i64_vec, write_ptp_i64_vec);
ptp_ser!(u8, read_ptp_u8, write_ptp_u8);
ptp_de!(u8, read_ptp_u8, write_ptp_u8);
ptp_ser!(i8, read_ptp_i8, write_ptp_i8);
ptp_de!(i8, read_ptp_i8, write_ptp_i8);
ptp_ser!(u16, read_ptp_u16, write_ptp_u16);
ptp_de!(u16, read_ptp_u16, write_ptp_u16);
ptp_ser!(i16, read_ptp_i16, write_ptp_i16);
ptp_de!(i16, read_ptp_i16, write_ptp_i16);
ptp_ser!(u32, read_ptp_u32, write_ptp_u32);
ptp_de!(u32, read_ptp_u32, write_ptp_u32);
ptp_ser!(i32, read_ptp_i32, write_ptp_i32);
ptp_de!(i32, read_ptp_i32, write_ptp_i32);
ptp_ser!(u64, read_ptp_u64, write_ptp_u64);
ptp_de!(u64, read_ptp_u64, write_ptp_u64);
ptp_ser!(i64, read_ptp_i64, write_ptp_i64);
ptp_de!(i64, read_ptp_i64, write_ptp_i64);
ptp_ser!(&str, read_ptp_str, write_ptp_str);
ptp_ser!(String, read_ptp_str, write_ptp_str);
ptp_de!(String, read_ptp_str, write_ptp_str);
ptp_ser!(Vec<u8>, read_ptp_u8_vec, write_ptp_u8_vec);
ptp_de!(Vec<u8>, read_ptp_u8_vec, write_ptp_u8_vec);
ptp_ser!(Vec<i8>, read_ptp_i8_vec, write_ptp_i8_vec);
ptp_de!(Vec<i8>, read_ptp_i8_vec, write_ptp_i8_vec);
ptp_ser!(Vec<u16>, read_ptp_u16_vec, write_ptp_u16_vec);
ptp_de!(Vec<u16>, read_ptp_u16_vec, write_ptp_u16_vec);
ptp_ser!(Vec<i16>, read_ptp_i16_vec, write_ptp_i16_vec);
ptp_de!(Vec<i16>, read_ptp_i16_vec, write_ptp_i16_vec);
ptp_ser!(Vec<u32>, read_ptp_u32_vec, write_ptp_u32_vec);
ptp_de!(Vec<u32>, read_ptp_u32_vec, write_ptp_u32_vec);
ptp_ser!(Vec<i32>, read_ptp_i32_vec, write_ptp_i32_vec);
ptp_de!(Vec<i32>, read_ptp_i32_vec, write_ptp_i32_vec);
ptp_ser!(Vec<u64>, read_ptp_u64_vec, write_ptp_u64_vec);
ptp_de!(Vec<u64>, read_ptp_u64_vec, write_ptp_u64_vec);
ptp_ser!(Vec<i64>, read_ptp_i64_vec, write_ptp_i64_vec);
ptp_de!(Vec<i64>, read_ptp_i64_vec, write_ptp_i64_vec);