pub struct OpenFilesystem<R> {
pub reader: BlockReader<R>,
pub superblock: Superblock,
pub tree_roots: BTreeMap<u64, (u64, u64)>,
pub per_device_dev_items: BTreeMap<u64, DeviceItem>,
}Expand description
Result of opening a btrfs filesystem from a block device or image.
Fields§
§reader: BlockReader<R>Block reader with fully populated chunk cache.
superblock: SuperblockParsed primary-device superblock.
tree_roots: BTreeMap<u64, (u64, u64)>Map of tree ID -> (root block logical address, key offset), from the root tree.
per_device_dev_items: BTreeMap<u64, DeviceItem>Per-device dev_item snapshots taken at open time. One entry
per opened device (always at least the primary). The transaction
crate uses these to splice the correct per-device identity into
the superblock when writing it back during commit, so a
multi-device filesystem doesn’t get clobbered with the primary
device’s dev_item.
Auto Trait Implementations§
impl<R> Freeze for OpenFilesystem<R>
impl<R> RefUnwindSafe for OpenFilesystem<R>where
R: RefUnwindSafe,
impl<R> Send for OpenFilesystem<R>where
R: Send,
impl<R> Sync for OpenFilesystem<R>where
R: Sync,
impl<R> Unpin for OpenFilesystem<R>
impl<R> UnsafeUnpin for OpenFilesystem<R>
impl<R> UnwindSafe for OpenFilesystem<R>where
R: RefUnwindSafe,
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