Struct ntfs::NtfsIndexRecord
source · pub struct NtfsIndexRecord { /* private fields */ }
Expand description
A single NTFS Index Record.
These records are denoted via an INDX
signature on the filesystem.
NTFS uses B-tree indexes to quickly look up files, Object IDs, Reparse Points, Security Descriptors, etc.
An Index Record is further comprised of Index Entries, which contain the actual key/data (see NtfsIndexEntry
,
iterated via NtfsIndexNodeEntries
).
Reference: https://flatcap.github.io/linux-ntfs/ntfs/concepts/index_record.html
Implementations§
source§impl NtfsIndexRecord
impl NtfsIndexRecord
sourcepub fn entries<E>(&self) -> Result<NtfsIndexNodeEntries<'_, E>>where
E: NtfsIndexEntryType,
pub fn entries<E>(&self) -> Result<NtfsIndexNodeEntries<'_, E>>where E: NtfsIndexEntryType,
Returns an iterator over all entries of this Index Record (cf. NtfsIndexEntry
).
sourcepub fn has_subnodes(&self) -> bool
pub fn has_subnodes(&self) -> bool
Returns whether this index node has sub-nodes. Otherwise, this index node is a leaf node.
sourcepub fn index_allocated_size(&self) -> u32
pub fn index_allocated_size(&self) -> u32
Returns the allocated size of this NTFS Index Record, in bytes.
sourcepub fn index_data_size(&self) -> u32
pub fn index_data_size(&self) -> u32
Returns the size actually used by index data within this NTFS Index Record, in bytes.
sourcepub fn vcn(&self) -> Vcn
pub fn vcn(&self) -> Vcn
Returns the Virtual Cluster Number (VCN) of this Index Record, as reported by the header of this Index Record.
This can be used to double-check that an Index Record is the actually requested one.
NtfsIndexAllocation::record_from_vcn
uses it for that purpose.