pub struct TargetMetadata {
pub block_zero: Vec<u8>,
pub bitmap: Vec<u8>,
pub catalog: Vec<u8>,
pub extents_overflow: Vec<u8>,
pub attributes: Option<Vec<u8>>,
pub vh_bytes: [u8; 512],
}Expand description
Output of build_target_metadata: the in-memory metadata image
for a streamed defrag target. Step 22d emits these byte buffers
directly into the compressor before streaming user-fork bytes.
Fields§
§block_zero: Vec<u8>The block-0 region: 1024 bytes of boot blocks (copied from
source) followed by the 512-byte primary VH at offset 1024 and
block_size - 1024 - 512 bytes of trailing zero pad.
bitmap: Vec<u8>Allocation bitmap, sized to bitmap_blocks * block_size.
catalog: Vec<u8>Catalog B-tree bytes, sized to catalog_blocks * block_size.
extents_overflow: Vec<u8>Extents-overflow B-tree bytes, sized to extents_blocks * block_size.
attributes: Option<Vec<u8>>Attributes B-tree bytes — only present when the source had
xattrs. Sized to attributes_blocks * block_size.
vh_bytes: [u8; 512]512-byte primary VH bytes. Already embedded inside block_zero,
surfaced here separately so 22d can stamp the alt VH without
re-serialising.