#[non_exhaustive]pub enum FormatReadPlanStep<'a, S: Storage + 'static> {
#[non_exhaustive] Raw {
storage: &'a S,
offset: u64,
image_offset: u64,
len: u64,
writable: bool,
},
#[non_exhaustive] Zero {
image_offset: u64,
len: u64,
explicit: bool,
},
#[non_exhaustive] Eof {
image_offset: u64,
len: u64,
},
#[non_exhaustive] Special {
layer: &'a FormatAccess<S>,
offset: u64,
image_offset: u64,
len: u64,
},
}Expand description
One step in a FormatReadPlan.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
#[non_exhaustive]Raw
Range that can be read directly from a storage object.
Fields
This variant is marked as non-exhaustive
Non-exhaustive enum variants could have additional fields added in future. Therefore, non-exhaustive enum variants cannot be constructed in external crates and cannot be matched against.
#[non_exhaustive]Zero
Range that should be returned as zeroes.
Fields
This variant is marked as non-exhaustive
Non-exhaustive enum variants could have additional fields added in future. Therefore, non-exhaustive enum variants cannot be constructed in external crates and cannot be matched against.
#[non_exhaustive]Eof
Range beyond the image’s top-layer end of file.
Normal reads fill this range with zeroes.
Fields
This variant is marked as non-exhaustive
Non-exhaustive enum variants could have additional fields added in future. Therefore, non-exhaustive enum variants cannot be constructed in external crates and cannot be matched against.
#[non_exhaustive]Special
Range that must be interpreted by the image format driver.
Fields
This variant is marked as non-exhaustive
Non-exhaustive enum variants could have additional fields added in future. Therefore, non-exhaustive enum variants cannot be constructed in external crates and cannot be matched against.
§
layer: &'a FormatAccess<S>Format layer where this special data was encountered.
Trait Implementations§
Auto Trait Implementations§
impl<'a, S> !RefUnwindSafe for FormatReadPlanStep<'a, S>
impl<'a, S> !UnwindSafe for FormatReadPlanStep<'a, S>
impl<'a, S> Freeze for FormatReadPlanStep<'a, S>
impl<'a, S> Send for FormatReadPlanStep<'a, S>
impl<'a, S> Sync for FormatReadPlanStep<'a, S>
impl<'a, S> Unpin for FormatReadPlanStep<'a, S>
impl<'a, S> UnsafeUnpin for FormatReadPlanStep<'a, S>
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