Sha256: 726bb1ca96a480ac2a0c8ccaa4c2291d62ca6c4af2b1a2e43b74ae7be17f6d75
Contents?: true
Size: 1.41 KB
Versions: 24
Compression:
Stored size: 1.41 KB
Contents
use core::fmt::Debug; use crate::elf; use crate::endian; use crate::pod::Pod; /// A trait for generic access to [`elf::CompressionHeader32`] and [`elf::CompressionHeader64`]. #[allow(missing_docs)] pub trait CompressionHeader: Debug + Pod { type Word: Into<u64>; type Endian: endian::Endian; fn ch_type(&self, endian: Self::Endian) -> u32; fn ch_size(&self, endian: Self::Endian) -> Self::Word; fn ch_addralign(&self, endian: Self::Endian) -> Self::Word; } impl<Endian: endian::Endian> CompressionHeader for elf::CompressionHeader32<Endian> { type Word = u32; type Endian = Endian; #[inline] fn ch_type(&self, endian: Self::Endian) -> u32 { self.ch_type.get(endian) } #[inline] fn ch_size(&self, endian: Self::Endian) -> Self::Word { self.ch_size.get(endian) } #[inline] fn ch_addralign(&self, endian: Self::Endian) -> Self::Word { self.ch_addralign.get(endian) } } impl<Endian: endian::Endian> CompressionHeader for elf::CompressionHeader64<Endian> { type Word = u64; type Endian = Endian; #[inline] fn ch_type(&self, endian: Self::Endian) -> u32 { self.ch_type.get(endian) } #[inline] fn ch_size(&self, endian: Self::Endian) -> Self::Word { self.ch_size.get(endian) } #[inline] fn ch_addralign(&self, endian: Self::Endian) -> Self::Word { self.ch_addralign.get(endian) } }
Version data entries
24 entries across 19 versions & 1 rubygems