pub struct BytecodeDumpFlags(/* private fields */);Expand description
Represents a bitfield.
Implementations§
Source§impl BytecodeDumpFlags
impl BytecodeDumpFlags
Sourcepub const CODE_OFFSET: u32 = 0u32
pub const CODE_OFFSET: u32 = 0u32
The bit offset of code in the bitfield.
Sourcepub const LINES_BITS: u32 = 1u32
pub const LINES_BITS: u32 = 1u32
The number of bits lines occupies in the bitfield.
Sourcepub const LINES_OFFSET: u32 = 1u32
pub const LINES_OFFSET: u32 = 1u32
The bit offset of lines in the bitfield.
Sourcepub const SOURCE_BITS: u32 = 1u32
pub const SOURCE_BITS: u32 = 1u32
The number of bits source occupies in the bitfield.
Sourcepub const SOURCE_OFFSET: u32 = 2u32
pub const SOURCE_OFFSET: u32 = 2u32
The bit offset of source in the bitfield.
Sourcepub const LOCALS_BITS: u32 = 1u32
pub const LOCALS_BITS: u32 = 1u32
The number of bits locals occupies in the bitfield.
Sourcepub const LOCALS_OFFSET: u32 = 3u32
pub const LOCALS_OFFSET: u32 = 3u32
The bit offset of locals in the bitfield.
Sourcepub const REMARKS_BITS: u32 = 1u32
pub const REMARKS_BITS: u32 = 1u32
The number of bits remarks occupies in the bitfield.
Sourcepub const REMARKS_OFFSET: u32 = 4u32
pub const REMARKS_OFFSET: u32 = 4u32
The bit offset of remarks in the bitfield.
Sourcepub const TYPES_BITS: u32 = 1u32
pub const TYPES_BITS: u32 = 1u32
The number of bits types occupies in the bitfield.
Sourcepub const TYPES_OFFSET: u32 = 5u32
pub const TYPES_OFFSET: u32 = 5u32
The bit offset of types in the bitfield.
Sourcepub const CONSTANTS_BITS: u32 = 1u32
pub const CONSTANTS_BITS: u32 = 1u32
The number of bits constants occupies in the bitfield.
Sourcepub const CONSTANTS_OFFSET: u32 = 6u32
pub const CONSTANTS_OFFSET: u32 = 6u32
The bit offset of constants in the bitfield.
Sourcepub const fn new_without_defaults() -> Self
pub const fn new_without_defaults() -> Self
Creates a new bitfield instance without respecting default values.
Sourcepub const fn from_bits_with_defaults(bits: u32) -> Self
pub const fn from_bits_with_defaults(bits: u32) -> Self
Creates a new bitfield instance from the given bits while respecting defaults.
Sourcepub const fn from_le_bits(bits: u32) -> Self
pub const fn from_le_bits(bits: u32) -> Self
Creates a new bitfield instance from the given little-endian bits.
Sourcepub const fn from_le_bits_with_defaults(bits: u32) -> Self
pub const fn from_le_bits_with_defaults(bits: u32) -> Self
Creates a new bitfield instance from the given little-endian bits while respecting defaults.
Sourcepub const fn from_be_bits(bits: u32) -> Self
pub const fn from_be_bits(bits: u32) -> Self
Creates a new bitfield instance from the given big-endian bits.
Sourcepub const fn from_be_bits_with_defaults(bits: u32) -> Self
pub const fn from_be_bits_with_defaults(bits: u32) -> Self
Creates a new bitfield instance from the given big-endian bits while respecting defaults.
Sourcepub const fn into_le_bits(self) -> u32
pub const fn into_le_bits(self) -> u32
Returns the bits of the bitfield in little-endian order.
Sourcepub const fn into_be_bits(self) -> u32
pub const fn into_be_bits(self) -> u32
Returns the bits of the bitfield in big-endian order.
Sourcepub const fn checked_set_lines(
&mut self,
bits: bool,
) -> Result<(), &'static str>
pub const fn checked_set_lines( &mut self, bits: bool, ) -> Result<(), &'static str>
Sets bit 1.
Sourcepub const fn set_source(&mut self, bits: bool)
pub const fn set_source(&mut self, bits: bool)
Sets bit 2.
Sourcepub const fn checked_set_source(
&mut self,
bits: bool,
) -> Result<(), &'static str>
pub const fn checked_set_source( &mut self, bits: bool, ) -> Result<(), &'static str>
Sets bit 2.
Sourcepub const fn set_locals(&mut self, bits: bool)
pub const fn set_locals(&mut self, bits: bool)
Sets bit 3.
Sourcepub const fn checked_set_locals(
&mut self,
bits: bool,
) -> Result<(), &'static str>
pub const fn checked_set_locals( &mut self, bits: bool, ) -> Result<(), &'static str>
Sets bit 3.
Sourcepub const fn set_remarks(&mut self, bits: bool)
pub const fn set_remarks(&mut self, bits: bool)
Sets bit 4.
Sourcepub const fn checked_set_remarks(
&mut self,
bits: bool,
) -> Result<(), &'static str>
pub const fn checked_set_remarks( &mut self, bits: bool, ) -> Result<(), &'static str>
Sets bit 4.
Sourcepub const fn checked_set_types(
&mut self,
bits: bool,
) -> Result<(), &'static str>
pub const fn checked_set_types( &mut self, bits: bool, ) -> Result<(), &'static str>
Sets bit 5.
Sourcepub const fn set_constants(&mut self, bits: bool)
pub const fn set_constants(&mut self, bits: bool)
Sets bit 6.
Sourcepub const fn checked_set_constants(
&mut self,
bits: bool,
) -> Result<(), &'static str>
pub const fn checked_set_constants( &mut self, bits: bool, ) -> Result<(), &'static str>
Sets bit 6.
Sourcepub const fn write_bits(&mut self, bits: u32)
pub const fn write_bits(&mut self, bits: u32)
Writes bits to the bitfield.
Sourcepub const fn write_bits_with_defaults(&mut self, bits: u32)
pub const fn write_bits_with_defaults(&mut self, bits: u32)
Writes bits to the bitfield while setting defaults.
Sourcepub const fn write_le_bits(&mut self, bits: u32)
pub const fn write_le_bits(&mut self, bits: u32)
Writes little-endian bits to the bitfield.
Sourcepub const fn write_le_bits_with_defaults(&mut self, bits: u32)
pub const fn write_le_bits_with_defaults(&mut self, bits: u32)
Writes little-endian bits to the bitfield while setting defaults.
Sourcepub const fn write_be_bits(&mut self, bits: u32)
pub const fn write_be_bits(&mut self, bits: u32)
Writes big-endian bits to the bitfield.
Sourcepub const fn write_be_bits_with_defaults(&mut self, bits: u32)
pub const fn write_be_bits_with_defaults(&mut self, bits: u32)
Writes big-endian bits to the bitfield while setting defaults.
Sourcepub const fn write_defaults(&mut self)
pub const fn write_defaults(&mut self)
Writes the bitfield defaults.
Sourcepub const fn checked_set_bit(
&mut self,
offset: u32,
bit: bool,
) -> Result<(), &'static str>
pub const fn checked_set_bit( &mut self, offset: u32, bit: bool, ) -> Result<(), &'static str>
Sets a bit in the bitfield. Returns an error if the offset is outside the bitfield range.
Sourcepub const fn set_bits_range(&mut self, offset: u32, length: u32, value: u32)
pub const fn set_bits_range(&mut self, offset: u32, length: u32, value: u32)
Sets bits in the bitfield starting from the offset to the length with the provided value.
Sourcepub const fn checked_set_bits_range(
&mut self,
offset: u32,
length: u32,
value: u32,
) -> Result<(), &'static str>
pub const fn checked_set_bits_range( &mut self, offset: u32, length: u32, value: u32, ) -> Result<(), &'static str>
Sets bits in the bitfield starting from the offset to the length with the provided value. Returns an error if the offset and length is outside the bitfield range, if the value is too large for the length, or if any bit in the range is non-writable.
Sourcepub const fn checked_get_bit(&self, offset: u32) -> Result<bool, &'static str>
pub const fn checked_get_bit(&self, offset: u32) -> Result<bool, &'static str>
Returns a bit from the bitfield. Returns an error if the offset is outside the bitfield range.
Sourcepub const fn get_bits_range(&self, offset: u32, length: u32) -> u32
pub const fn get_bits_range(&self, offset: u32, length: u32) -> u32
Returns bits from the bitfield.
Sourcepub const fn checked_get_bits_range(
&self,
offset: u32,
length: u32,
) -> Result<u32, &'static str>
pub const fn checked_get_bits_range( &self, offset: u32, length: u32, ) -> Result<u32, &'static str>
Returns bits from the bitfield starting from the offset to the length. Returns an error if the offset and length is outside the bitfield range or if any bit in the range is non-readable.
Sourcepub const fn clear_bits(&mut self)
pub const fn clear_bits(&mut self)
Clears all bits in the bitfield.
Sourcepub const fn clear_bits_with_defaults(&mut self)
pub const fn clear_bits_with_defaults(&mut self)
Clears all bits in the bitfield and set field defaults.
Sourcepub const fn clear_code(&mut self)
pub const fn clear_code(&mut self)
Clears bit 0.
Sourcepub const fn clear_lines(&mut self)
pub const fn clear_lines(&mut self)
Clears bit 1.
Sourcepub const fn clear_source(&mut self)
pub const fn clear_source(&mut self)
Clears bit 2.
Sourcepub const fn clear_locals(&mut self)
pub const fn clear_locals(&mut self)
Clears bit 3.
Sourcepub const fn clear_remarks(&mut self)
pub const fn clear_remarks(&mut self)
Clears bit 4.
Sourcepub const fn clear_types(&mut self)
pub const fn clear_types(&mut self)
Clears bit 5.
Sourcepub const fn clear_constants(&mut self)
pub const fn clear_constants(&mut self)
Clears bit 6.
Sourcepub const fn clear_code_to_default(&mut self)
pub const fn clear_code_to_default(&mut self)
Clears bit 0.
Sourcepub const fn clear_lines_to_default(&mut self)
pub const fn clear_lines_to_default(&mut self)
Clears bit 1.
Sourcepub const fn clear_source_to_default(&mut self)
pub const fn clear_source_to_default(&mut self)
Clears bit 2.
Sourcepub const fn clear_locals_to_default(&mut self)
pub const fn clear_locals_to_default(&mut self)
Clears bit 3.
Sourcepub const fn clear_remarks_to_default(&mut self)
pub const fn clear_remarks_to_default(&mut self)
Clears bit 4.
Sourcepub const fn clear_types_to_default(&mut self)
pub const fn clear_types_to_default(&mut self)
Clears bit 5.
Sourcepub const fn clear_constants_to_default(&mut self)
pub const fn clear_constants_to_default(&mut self)
Clears bit 6.
Sourcepub const fn invert_bits(&mut self)
pub const fn invert_bits(&mut self)
Inverts all writable bits in the bitfield.
Sourcepub const fn invert_code(&mut self)
pub const fn invert_code(&mut self)
Inverts bit 0.
Sourcepub const fn invert_lines(&mut self)
pub const fn invert_lines(&mut self)
Inverts bit 1.
Sourcepub const fn invert_source(&mut self)
pub const fn invert_source(&mut self)
Inverts bit 2.
Sourcepub const fn invert_locals(&mut self)
pub const fn invert_locals(&mut self)
Inverts bit 3.
Sourcepub const fn invert_remarks(&mut self)
pub const fn invert_remarks(&mut self)
Inverts bit 4.
Sourcepub const fn invert_types(&mut self)
pub const fn invert_types(&mut self)
Inverts bit 5.
Sourcepub const fn invert_constants(&mut self)
pub const fn invert_constants(&mut self)
Inverts bit 6.
Sourcepub const fn code_inverted(&self) -> bool
pub const fn code_inverted(&self) -> bool
Inverts bit 0.
Sourcepub const fn lines_inverted(&self) -> bool
pub const fn lines_inverted(&self) -> bool
Inverts bit 1.
Sourcepub const fn source_inverted(&self) -> bool
pub const fn source_inverted(&self) -> bool
Inverts bit 2.
Sourcepub const fn locals_inverted(&self) -> bool
pub const fn locals_inverted(&self) -> bool
Inverts bit 3.
Sourcepub const fn remarks_inverted(&self) -> bool
pub const fn remarks_inverted(&self) -> bool
Inverts bit 4.
Sourcepub const fn types_inverted(&self) -> bool
pub const fn types_inverted(&self) -> bool
Inverts bit 5.
Sourcepub const fn constants_inverted(&self) -> bool
pub const fn constants_inverted(&self) -> bool
Inverts bit 6.
Trait Implementations§
Source§impl Clone for BytecodeDumpFlags
impl Clone for BytecodeDumpFlags
Source§fn clone(&self) -> BytecodeDumpFlags
fn clone(&self) -> BytecodeDumpFlags
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more