#[non_exhaustive]pub struct Inode {Show 15 fields
pub oid: u64,
pub parent_id: u64,
pub private_id: u64,
pub create_time: u64,
pub mod_time: u64,
pub change_time: u64,
pub access_time: u64,
pub internal_flags: u64,
pub nlink_or_nchildren: i32,
pub bsd_flags: u32,
pub uid: u32,
pub gid: u32,
pub mode: u16,
pub name: Option<String>,
pub size: Option<u64>,
}Expand description
A parsed inode.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.oid: u64File-system object id of this inode (the j_key oid).
parent_id: u64parent_id — the inode of the containing directory.
private_id: u64private_id — the data-stream object id (file extents are keyed by it).
create_time: u64create_time (ns since 1970-01-01 UTC).
mod_time: u64mod_time (ns since 1970-01-01 UTC).
change_time: u64change_time (ns since 1970-01-01 UTC).
access_time: u64access_time (ns since 1970-01-01 UTC).
internal_flags: u64internal_flags (e.g. INODE_WAS_CLONED, INODE_NO_RSRC_FORK).
nlink_or_nchildren: i32nchildren (directories) or nlink (files) — the same union field.
bsd_flags: u32bsd_flags — BSD file entry flags.
uid: u32owner — owner user id (uid).
gid: u32group — group id (gid).
mode: u16mode — POSIX file mode (type bits + permissions).
name: Option<String>Filename from the INO_EXT_TYPE_NAME xfield, if present.
size: Option<u64>Logical file size (the data-stream used_size) from the
INO_EXT_TYPE_DSTREAM xfield, if present (directories have none).
Implementations§
Source§impl Inode
impl Inode
Sourcepub fn parse(oid: u64, value: &[u8]) -> Result<Self>
pub fn parse(oid: u64, value: &[u8]) -> Result<Self>
Parse a j_inode_val_t value (+ xfields) for oid. Bounds-checked: a
truncated value reads missing fields as 0 rather than panicking.
§Errors
Never fails for a well-formed slice today; the Result is reserved for
future stricter validation (kept for API stability).