#[non_exhaustive]pub struct Chunk {
pub length: u64,
pub owner: u64,
pub stripe_len: u64,
pub chunk_type: u64,
pub num_stripes: u16,
pub sub_stripes: u16,
pub stripes: Vec<Stripe>,
}Expand description
A parsed btrfs_chunk item: chunk geometry + its physical stripes.
The chunk’s logical start is its item key’s offset (carried alongside in
Node::chunk_items), not stored inside the chunk struct.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.length: u64length — the chunk’s logical byte span.
owner: u64owner — the objectid that owns the chunk (2 = the extent tree).
stripe_len: u64stripe_len — the stripe unit size.
chunk_type: u64type — the BTRFS_BLOCK_GROUP_* flag bits (DATA/SYSTEM/METADATA | DUP…).
num_stripes: u16num_stripes — the number of physical stripes that follow.
sub_stripes: u16sub_stripes — RAID10 sub-stripe count (1 for single/DUP).
stripes: Vec<Stripe>The decoded stripes (physical placements).
Trait Implementations§
impl Eq for Chunk
impl StructuralPartialEq for Chunk
Auto Trait Implementations§
impl Freeze for Chunk
impl RefUnwindSafe for Chunk
impl Send for Chunk
impl Sync for Chunk
impl Unpin for Chunk
impl UnsafeUnpin for Chunk
impl UnwindSafe for Chunk
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