pub struct DefaultFastFormatterTraitOptions;
Expand description

Default FastFormatter options

Trait Implementations§

source§

impl SpecializedFormatterTraitOptions for DefaultFastFormatterTraitOptions

source§

const ENABLE_SYMBOL_RESOLVER: bool = true

Set to true so symbol resolvers can be used

source§

const ENABLE_DB_DW_DD_DQ: bool = true

Enables support for formatting db, dw, dd, dq.

For fastest code, this should be disabled, not enabled.

source§

fn space_after_operand_separator(options: &FastFormatterOptions) -> bool

Add a space after the operand separator

DefaultValueExample
_truemov rax, rcx
👍falsemov rax,rcx
Arguments
  • options: Current formatter options
source§

fn rip_relative_addresses(options: &FastFormatterOptions) -> bool

Show RIP+displ or the virtual address

DefaultValueExample
_truemov eax,[rip+12345678h]
👍falsemov eax,[1029384756AFBECDh]
Arguments
  • options: Current formatter options
source§

fn use_pseudo_ops(options: &FastFormatterOptions) -> bool

Use pseudo instructions

DefaultValueExample
👍truevcmpnltsd xmm2,xmm6,xmm3
_falsevcmpsd xmm2,xmm6,xmm3,5h
Arguments
  • options: Current formatter options
source§

fn show_symbol_address(options: &FastFormatterOptions) -> bool

Show the original value after the symbol name

DefaultValueExample
_truemov eax,[myfield (12345678)]
👍falsemov eax,[myfield]
Arguments
  • options: Current formatter options
source§

fn always_show_segment_register(options: &FastFormatterOptions) -> bool

Always show the effective segment register. If the option is false, only show the segment register if there’s a segment override prefix.

DefaultValueExample
_truemov eax,ds:[ecx]
👍falsemov eax,[ecx]
Arguments
  • options: Current formatter options
source§

fn always_show_memory_size(options: &FastFormatterOptions) -> bool

Always show the size of memory operands

DefaultValueExampleExample
_truemov eax,dword ptr [ebx]add byte ptr [eax],0x12
👍falsemov eax,[ebx]add byte ptr [eax],0x12
Arguments
  • options: Current formatter options
source§

fn uppercase_hex(options: &FastFormatterOptions) -> bool

Use uppercase hex digits

DefaultValueExample
👍true0xFF
_false0xff
Arguments
  • options: Current formatter options
source§

fn use_hex_prefix(options: &FastFormatterOptions) -> bool

Use a hex prefix (0x) or a hex suffix (h)

DefaultValueExample
_true0x5A
👍false5Ah
Arguments
  • options: Current formatter options
source§

unsafe fn verify_output_has_enough_bytes_left() -> bool

The formatter makes sure that the output string has at least 300 bytes left at the start of format() and also after appending symbols to output. This is enough space for all formatted instructions. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.