pub struct IncompatibleFeatures { /* private fields */ }Expand description
Bitmask of incompatible features. An implementation must fail to open an image if an unknown bit is set.
Implementations§
Source§impl IncompatibleFeatures
impl IncompatibleFeatures
Sourcepub const fn into_bytes(self) -> [u8; 8]
pub const fn into_bytes(self) -> [u8; 8]
Sourcepub const fn from_bytes(bytes: [u8; 8]) -> Self
pub const fn from_bytes(bytes: [u8; 8]) -> Self
Converts the given bytes directly into the bitfield struct.
Source§impl IncompatibleFeatures
impl IncompatibleFeatures
Sourcepub fn dirty(&self) -> <bool as Specifier>::InOut
pub fn dirty(&self) -> <bool as Specifier>::InOut
Returns the value of dirty. Dirty bit. If this bit is set then refcounts may be inconsistent, make sure to scan L1/L2 tables to repair refcounts before accessing the image.
Sourcepub fn dirty_or_err(
&self,
) -> Result<<bool as Specifier>::InOut, InvalidBitPattern<<bool as Specifier>::Bytes>>
pub fn dirty_or_err( &self, ) -> Result<<bool as Specifier>::InOut, InvalidBitPattern<<bool as Specifier>::Bytes>>
Returns the value of dirty.
#Errors
If the returned value contains an invalid bit pattern for dirty. Dirty bit. If this bit is set then refcounts may be inconsistent, make sure to scan L1/L2 tables to repair refcounts before accessing the image.
Sourcepub fn with_dirty(self, new_val: <bool as Specifier>::InOut) -> Self
pub fn with_dirty(self, new_val: <bool as Specifier>::InOut) -> Self
Returns a copy of the bitfield with the value of dirty set to the given value.
#Panics
If the given value is out of bounds for dirty. Dirty bit. If this bit is set then refcounts may be inconsistent, make sure to scan L1/L2 tables to repair refcounts before accessing the image.
Sourcepub fn with_dirty_checked(
self,
new_val: <bool as Specifier>::InOut,
) -> Result<Self, OutOfBounds>
pub fn with_dirty_checked( self, new_val: <bool as Specifier>::InOut, ) -> Result<Self, OutOfBounds>
Returns a copy of the bitfield with the value of dirty set to the given value.
#Errors
If the given value is out of bounds for dirty. Dirty bit. If this bit is set then refcounts may be inconsistent, make sure to scan L1/L2 tables to repair refcounts before accessing the image.
Sourcepub fn set_dirty(&mut self, new_val: <bool as Specifier>::InOut)
pub fn set_dirty(&mut self, new_val: <bool as Specifier>::InOut)
Sets the value of dirty to the given value.
#Panics
If the given value is out of bounds for dirty. Dirty bit. If this bit is set then refcounts may be inconsistent, make sure to scan L1/L2 tables to repair refcounts before accessing the image.
Sourcepub fn set_dirty_checked(
&mut self,
new_val: <bool as Specifier>::InOut,
) -> Result<(), OutOfBounds>
pub fn set_dirty_checked( &mut self, new_val: <bool as Specifier>::InOut, ) -> Result<(), OutOfBounds>
Sets the value of dirty to the given value.
#Errors
If the given value is out of bounds for dirty. Dirty bit. If this bit is set then refcounts may be inconsistent, make sure to scan L1/L2 tables to repair refcounts before accessing the image.
Sourcepub fn corrupt(&self) -> <bool as Specifier>::InOut
pub fn corrupt(&self) -> <bool as Specifier>::InOut
Returns the value of corrupt. Corrupt bit. If this bit is set then any data structure may be corrupt and the image must not be written to (unless for regaining consistency).
Sourcepub fn corrupt_or_err(
&self,
) -> Result<<bool as Specifier>::InOut, InvalidBitPattern<<bool as Specifier>::Bytes>>
pub fn corrupt_or_err( &self, ) -> Result<<bool as Specifier>::InOut, InvalidBitPattern<<bool as Specifier>::Bytes>>
Returns the value of corrupt.
#Errors
If the returned value contains an invalid bit pattern for corrupt. Corrupt bit. If this bit is set then any data structure may be corrupt and the image must not be written to (unless for regaining consistency).
Sourcepub fn with_corrupt(self, new_val: <bool as Specifier>::InOut) -> Self
pub fn with_corrupt(self, new_val: <bool as Specifier>::InOut) -> Self
Returns a copy of the bitfield with the value of corrupt set to the given value.
#Panics
If the given value is out of bounds for corrupt. Corrupt bit. If this bit is set then any data structure may be corrupt and the image must not be written to (unless for regaining consistency).
Sourcepub fn with_corrupt_checked(
self,
new_val: <bool as Specifier>::InOut,
) -> Result<Self, OutOfBounds>
pub fn with_corrupt_checked( self, new_val: <bool as Specifier>::InOut, ) -> Result<Self, OutOfBounds>
Returns a copy of the bitfield with the value of corrupt set to the given value.
#Errors
If the given value is out of bounds for corrupt. Corrupt bit. If this bit is set then any data structure may be corrupt and the image must not be written to (unless for regaining consistency).
Sourcepub fn set_corrupt(&mut self, new_val: <bool as Specifier>::InOut)
pub fn set_corrupt(&mut self, new_val: <bool as Specifier>::InOut)
Sets the value of corrupt to the given value.
#Panics
If the given value is out of bounds for corrupt. Corrupt bit. If this bit is set then any data structure may be corrupt and the image must not be written to (unless for regaining consistency).
Sourcepub fn set_corrupt_checked(
&mut self,
new_val: <bool as Specifier>::InOut,
) -> Result<(), OutOfBounds>
pub fn set_corrupt_checked( &mut self, new_val: <bool as Specifier>::InOut, ) -> Result<(), OutOfBounds>
Sets the value of corrupt to the given value.
#Errors
If the given value is out of bounds for corrupt. Corrupt bit. If this bit is set then any data structure may be corrupt and the image must not be written to (unless for regaining consistency).
Sourcepub fn external_data_file(&self) -> <bool as Specifier>::InOut
pub fn external_data_file(&self) -> <bool as Specifier>::InOut
Returns the value of external_data_file. External data file bit. If this bit is set, an external data file is used. Guest clusters are then stored in the external data file. For such images, clusters in the external data file are not refcounted. The offset field in the Standard Cluster Descriptor must match the guest offset and neither compressed clusters nor internal snapshots are supported.
An External Data File Name header extension may be present if this bit is set.
Sourcepub fn external_data_file_or_err(
&self,
) -> Result<<bool as Specifier>::InOut, InvalidBitPattern<<bool as Specifier>::Bytes>>
pub fn external_data_file_or_err( &self, ) -> Result<<bool as Specifier>::InOut, InvalidBitPattern<<bool as Specifier>::Bytes>>
Returns the value of external_data_file.
#Errors
If the returned value contains an invalid bit pattern for external_data_file. External data file bit. If this bit is set, an external data file is used. Guest clusters are then stored in the external data file. For such images, clusters in the external data file are not refcounted. The offset field in the Standard Cluster Descriptor must match the guest offset and neither compressed clusters nor internal snapshots are supported.
An External Data File Name header extension may be present if this bit is set.
Sourcepub fn with_external_data_file(
self,
new_val: <bool as Specifier>::InOut,
) -> Self
pub fn with_external_data_file( self, new_val: <bool as Specifier>::InOut, ) -> Self
Returns a copy of the bitfield with the value of external_data_file set to the given value.
#Panics
If the given value is out of bounds for external_data_file. External data file bit. If this bit is set, an external data file is used. Guest clusters are then stored in the external data file. For such images, clusters in the external data file are not refcounted. The offset field in the Standard Cluster Descriptor must match the guest offset and neither compressed clusters nor internal snapshots are supported.
An External Data File Name header extension may be present if this bit is set.
Sourcepub fn with_external_data_file_checked(
self,
new_val: <bool as Specifier>::InOut,
) -> Result<Self, OutOfBounds>
pub fn with_external_data_file_checked( self, new_val: <bool as Specifier>::InOut, ) -> Result<Self, OutOfBounds>
Returns a copy of the bitfield with the value of external_data_file set to the given value.
#Errors
If the given value is out of bounds for external_data_file. External data file bit. If this bit is set, an external data file is used. Guest clusters are then stored in the external data file. For such images, clusters in the external data file are not refcounted. The offset field in the Standard Cluster Descriptor must match the guest offset and neither compressed clusters nor internal snapshots are supported.
An External Data File Name header extension may be present if this bit is set.
Sourcepub fn set_external_data_file(&mut self, new_val: <bool as Specifier>::InOut)
pub fn set_external_data_file(&mut self, new_val: <bool as Specifier>::InOut)
Sets the value of external_data_file to the given value.
#Panics
If the given value is out of bounds for external_data_file. External data file bit. If this bit is set, an external data file is used. Guest clusters are then stored in the external data file. For such images, clusters in the external data file are not refcounted. The offset field in the Standard Cluster Descriptor must match the guest offset and neither compressed clusters nor internal snapshots are supported.
An External Data File Name header extension may be present if this bit is set.
Sourcepub fn set_external_data_file_checked(
&mut self,
new_val: <bool as Specifier>::InOut,
) -> Result<(), OutOfBounds>
pub fn set_external_data_file_checked( &mut self, new_val: <bool as Specifier>::InOut, ) -> Result<(), OutOfBounds>
Sets the value of external_data_file to the given value.
#Errors
If the given value is out of bounds for external_data_file. External data file bit. If this bit is set, an external data file is used. Guest clusters are then stored in the external data file. For such images, clusters in the external data file are not refcounted. The offset field in the Standard Cluster Descriptor must match the guest offset and neither compressed clusters nor internal snapshots are supported.
An External Data File Name header extension may be present if this bit is set.
Sourcepub fn has_compression_type(&self) -> <bool as Specifier>::InOut
pub fn has_compression_type(&self) -> <bool as Specifier>::InOut
Returns the value of has_compression_type. Compression type bit. If this bit is set, a non-default compression is used for compressed clusters. The compression_type field must be present and not zero.
Sourcepub fn has_compression_type_or_err(
&self,
) -> Result<<bool as Specifier>::InOut, InvalidBitPattern<<bool as Specifier>::Bytes>>
pub fn has_compression_type_or_err( &self, ) -> Result<<bool as Specifier>::InOut, InvalidBitPattern<<bool as Specifier>::Bytes>>
Returns the value of has_compression_type.
#Errors
If the returned value contains an invalid bit pattern for has_compression_type. Compression type bit. If this bit is set, a non-default compression is used for compressed clusters. The compression_type field must be present and not zero.
Sourcepub fn with_has_compression_type(
self,
new_val: <bool as Specifier>::InOut,
) -> Self
pub fn with_has_compression_type( self, new_val: <bool as Specifier>::InOut, ) -> Self
Returns a copy of the bitfield with the value of has_compression_type set to the given value.
#Panics
If the given value is out of bounds for has_compression_type. Compression type bit. If this bit is set, a non-default compression is used for compressed clusters. The compression_type field must be present and not zero.
Sourcepub fn with_has_compression_type_checked(
self,
new_val: <bool as Specifier>::InOut,
) -> Result<Self, OutOfBounds>
pub fn with_has_compression_type_checked( self, new_val: <bool as Specifier>::InOut, ) -> Result<Self, OutOfBounds>
Returns a copy of the bitfield with the value of has_compression_type set to the given value.
#Errors
If the given value is out of bounds for has_compression_type. Compression type bit. If this bit is set, a non-default compression is used for compressed clusters. The compression_type field must be present and not zero.
Sourcepub fn set_has_compression_type(&mut self, new_val: <bool as Specifier>::InOut)
pub fn set_has_compression_type(&mut self, new_val: <bool as Specifier>::InOut)
Sets the value of has_compression_type to the given value.
#Panics
If the given value is out of bounds for has_compression_type. Compression type bit. If this bit is set, a non-default compression is used for compressed clusters. The compression_type field must be present and not zero.
Sourcepub fn set_has_compression_type_checked(
&mut self,
new_val: <bool as Specifier>::InOut,
) -> Result<(), OutOfBounds>
pub fn set_has_compression_type_checked( &mut self, new_val: <bool as Specifier>::InOut, ) -> Result<(), OutOfBounds>
Sets the value of has_compression_type to the given value.
#Errors
If the given value is out of bounds for has_compression_type. Compression type bit. If this bit is set, a non-default compression is used for compressed clusters. The compression_type field must be present and not zero.
Sourcepub fn extended_l2(&self) -> <bool as Specifier>::InOut
pub fn extended_l2(&self) -> <bool as Specifier>::InOut
Returns the value of extended_l2. Extended L2 Entries. If this bit is set then L2 table entries use an extended format that allows subcluster-based allocation. See the Extended L2 Entries section for more details.
Sourcepub fn extended_l2_or_err(
&self,
) -> Result<<bool as Specifier>::InOut, InvalidBitPattern<<bool as Specifier>::Bytes>>
pub fn extended_l2_or_err( &self, ) -> Result<<bool as Specifier>::InOut, InvalidBitPattern<<bool as Specifier>::Bytes>>
Returns the value of extended_l2.
#Errors
If the returned value contains an invalid bit pattern for extended_l2. Extended L2 Entries. If this bit is set then L2 table entries use an extended format that allows subcluster-based allocation. See the Extended L2 Entries section for more details.
Sourcepub fn with_extended_l2(self, new_val: <bool as Specifier>::InOut) -> Self
pub fn with_extended_l2(self, new_val: <bool as Specifier>::InOut) -> Self
Returns a copy of the bitfield with the value of extended_l2 set to the given value.
#Panics
If the given value is out of bounds for extended_l2. Extended L2 Entries. If this bit is set then L2 table entries use an extended format that allows subcluster-based allocation. See the Extended L2 Entries section for more details.
Sourcepub fn with_extended_l2_checked(
self,
new_val: <bool as Specifier>::InOut,
) -> Result<Self, OutOfBounds>
pub fn with_extended_l2_checked( self, new_val: <bool as Specifier>::InOut, ) -> Result<Self, OutOfBounds>
Returns a copy of the bitfield with the value of extended_l2 set to the given value.
#Errors
If the given value is out of bounds for extended_l2. Extended L2 Entries. If this bit is set then L2 table entries use an extended format that allows subcluster-based allocation. See the Extended L2 Entries section for more details.
Sourcepub fn set_extended_l2(&mut self, new_val: <bool as Specifier>::InOut)
pub fn set_extended_l2(&mut self, new_val: <bool as Specifier>::InOut)
Sets the value of extended_l2 to the given value.
#Panics
If the given value is out of bounds for extended_l2. Extended L2 Entries. If this bit is set then L2 table entries use an extended format that allows subcluster-based allocation. See the Extended L2 Entries section for more details.
Sourcepub fn set_extended_l2_checked(
&mut self,
new_val: <bool as Specifier>::InOut,
) -> Result<(), OutOfBounds>
pub fn set_extended_l2_checked( &mut self, new_val: <bool as Specifier>::InOut, ) -> Result<(), OutOfBounds>
Sets the value of extended_l2 to the given value.
#Errors
If the given value is out of bounds for extended_l2. Extended L2 Entries. If this bit is set then L2 table entries use an extended format that allows subcluster-based allocation. See the Extended L2 Entries section for more details.