#[non_exhaustive]pub struct FileSpaceInfo {
pub strategy: FileSpaceStrategy,
pub persist: bool,
pub threshold: u64,
pub page_size: u64,
pub page_end_meta_threshold: u16,
pub eoa_pre_fsm: u64,
pub manager_addrs: Vec<u64>,
}Expand description
A parsed (or to-be-written) File Space Info message.
Non-exhaustive: read through File::file_space_info,
never constructed by a caller — set a file’s strategy with
FileBuilder::with_file_space_strategy.
Fields may be added as the format message grows.
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.strategy: FileSpaceStrategyThe file-space management strategy.
persist: boolWhether free space is persisted to disk across file close (the manager addresses below are written only when this is set).
threshold: u64Smallest free-space section size the managers track.
page_size: u64File-space page size used for paged allocation.
page_end_meta_threshold: u16Page-end metadata threshold (paged allocation tuning).
eoa_pre_fsm: u64End-of-allocation address recorded before free-space manager metadata
was allocated; u64::MAX when free space is not persisted.
manager_addrs: Vec<u64>Free-space manager header addresses (present only when persist is
set); unused slots are u64::MAX. Followed to their on-disk FSHD/
FSSE blocks by File::persisted_free_space.
Trait Implementations§
Source§impl Clone for FileSpaceInfo
impl Clone for FileSpaceInfo
Source§fn clone(&self) -> FileSpaceInfo
fn clone(&self) -> FileSpaceInfo
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for FileSpaceInfo
impl Debug for FileSpaceInfo
impl Eq for FileSpaceInfo
Source§impl PartialEq for FileSpaceInfo
impl PartialEq for FileSpaceInfo
impl StructuralPartialEq for FileSpaceInfo
Auto Trait Implementations§
impl Freeze for FileSpaceInfo
impl RefUnwindSafe for FileSpaceInfo
impl Send for FileSpaceInfo
impl Sync for FileSpaceInfo
impl Unpin for FileSpaceInfo
impl UnsafeUnpin for FileSpaceInfo
impl UnwindSafe for FileSpaceInfo
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more