pub struct XattrEntryHeader {
pub offset: u64,
pub prefix: &'static [u8],
pub name_index: u8,
pub name_len: usize,
pub value_size: usize,
pub entry_aligned_size: u64,
}Expand description
A parsed representation of an EROFS xattr entry record header.
Fields§
§offset: u64§prefix: &'static [u8]§name_index: u8§name_len: usize§value_size: usize§entry_aligned_size: u64Implementations§
Source§impl XattrEntryHeader
impl XattrEntryHeader
Sourcepub fn parse(reader: &dyn Reader, offset: u64) -> Result<Self, ErofsError>
pub fn parse(reader: &dyn Reader, offset: u64) -> Result<Self, ErofsError>
Read and validate an xattr entry record header from the reader.
Sourcepub fn matches_name(
&self,
reader: &dyn Reader,
name: &[u8],
) -> Result<bool, ReaderError>
pub fn matches_name( &self, reader: &dyn Reader, name: &[u8], ) -> Result<bool, ReaderError>
Check if this xattr entry matches the given full attribute name (prefix + suffix).
Sourcepub fn read_name(&self, reader: &dyn Reader) -> Result<Vec<u8>, ReaderError>
pub fn read_name(&self, reader: &dyn Reader) -> Result<Vec<u8>, ReaderError>
Read the name of this xattr entry (prefix + suffix).
Sourcepub fn read_value(&self, reader: &dyn Reader) -> Result<Vec<u8>, ReaderError>
pub fn read_value(&self, reader: &dyn Reader) -> Result<Vec<u8>, ReaderError>
Read the value payload for this entry.
Sourcepub fn read_payload(
&self,
reader: &dyn Reader,
) -> Result<(Vec<u8>, Vec<u8>), ReaderError>
pub fn read_payload( &self, reader: &dyn Reader, ) -> Result<(Vec<u8>, Vec<u8>), ReaderError>
Read both key name and value payload for this entry.
Trait Implementations§
Source§impl Clone for XattrEntryHeader
impl Clone for XattrEntryHeader
impl Copy for XattrEntryHeader
Auto Trait Implementations§
impl Freeze for XattrEntryHeader
impl RefUnwindSafe for XattrEntryHeader
impl Send for XattrEntryHeader
impl Sync for XattrEntryHeader
impl Unpin for XattrEntryHeader
impl UnsafeUnpin for XattrEntryHeader
impl UnwindSafe for XattrEntryHeader
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
Source§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more