pub struct Registers {Show 29 fields
pub rax: u64,
pub rbx: u64,
pub rcx: u64,
pub rdx: u64,
pub rsp: u64,
pub rbp: u64,
pub rsi: u64,
pub rdi: u64,
pub r8: u64,
pub r9: u64,
pub r10: u64,
pub r11: u64,
pub r12: u64,
pub r13: u64,
pub r14: u64,
pub r15: u64,
pub rflags: u64,
pub rip: u64,
pub es: u16,
pub cs: u16,
pub ss: u16,
pub ds: u16,
pub fs: u16,
pub gs: u16,
pub gdtr: u64,
pub ldtr: u64,
pub idtr: u64,
pub fpu: Option<Box<FPU>>,
pub avx: Option<Box<AVX>>,
}
Fields§
§rax: u64
§rbx: u64
§rcx: u64
§rdx: u64
§rsp: u64
§rbp: u64
§rsi: u64
§rdi: u64
§r8: u64
§r9: u64
§r10: u64
§r11: u64
§r12: u64
§r13: u64
§r14: u64
§r15: u64
§rflags: u64
§rip: u64
§es: u16
§cs: u16
§ss: u16
§ds: u16
§fs: u16
§gs: u16
§gdtr: u64
§ldtr: u64
§idtr: u64
§fpu: Option<Box<FPU>>
§avx: Option<Box<AVX>>
Implementations§
source§impl Registers
impl Registers
pub fn rax(&self) -> u64
pub fn eax(&self) -> u32
pub fn ax(&self) -> u16
pub fn al(&self) -> u8
pub fn set_rax(&mut self, value: u64)
pub fn set_eax(&mut self, value: u32)
pub fn set_ax(&mut self, value: u16)
pub fn set_al(&mut self, value: u8)
pub fn ah(&self) -> u8
pub fn set_ah(&mut self, value: u8)
pub fn rbx(&self) -> u64
pub fn ebx(&self) -> u32
pub fn bx(&self) -> u16
pub fn bl(&self) -> u8
pub fn set_rbx(&mut self, value: u64)
pub fn set_ebx(&mut self, value: u32)
pub fn set_bx(&mut self, value: u16)
pub fn set_bl(&mut self, value: u8)
pub fn bh(&self) -> u8
pub fn set_bh(&mut self, value: u8)
pub fn rcx(&self) -> u64
pub fn ecx(&self) -> u32
pub fn cx(&self) -> u16
pub fn cl(&self) -> u8
pub fn set_rcx(&mut self, value: u64)
pub fn set_ecx(&mut self, value: u32)
pub fn set_cx(&mut self, value: u16)
pub fn set_cl(&mut self, value: u8)
pub fn ch(&self) -> u8
pub fn set_ch(&mut self, value: u8)
pub fn rdx(&self) -> u64
pub fn edx(&self) -> u32
pub fn dx(&self) -> u16
pub fn dl(&self) -> u8
pub fn set_rdx(&mut self, value: u64)
pub fn set_edx(&mut self, value: u32)
pub fn set_dx(&mut self, value: u16)
pub fn set_dl(&mut self, value: u8)
pub fn dh(&self) -> u8
pub fn set_dh(&mut self, value: u8)
pub fn r8(&self) -> u64
pub fn r8d(&self) -> u32
pub fn r8w(&self) -> u16
pub fn r8b(&self) -> u8
pub fn set_r8(&mut self, value: u64)
pub fn set_r8d(&mut self, value: u32)
pub fn set_r8w(&mut self, value: u16)
pub fn set_r8b(&mut self, value: u8)
pub fn r9(&self) -> u64
pub fn r9d(&self) -> u32
pub fn r9w(&self) -> u16
pub fn r9b(&self) -> u8
pub fn set_r9(&mut self, value: u64)
pub fn set_r9d(&mut self, value: u32)
pub fn set_r9w(&mut self, value: u16)
pub fn set_r9b(&mut self, value: u8)
pub fn r10(&self) -> u64
pub fn r10d(&self) -> u32
pub fn r10w(&self) -> u16
pub fn r10b(&self) -> u8
pub fn set_r10(&mut self, value: u64)
pub fn set_r10d(&mut self, value: u32)
pub fn set_r10w(&mut self, value: u16)
pub fn set_r10b(&mut self, value: u8)
pub fn r11(&self) -> u64
pub fn r11d(&self) -> u32
pub fn r11w(&self) -> u16
pub fn r11b(&self) -> u8
pub fn set_r11(&mut self, value: u64)
pub fn set_r11d(&mut self, value: u32)
pub fn set_r11w(&mut self, value: u16)
pub fn set_r11b(&mut self, value: u8)
pub fn r12(&self) -> u64
pub fn r12d(&self) -> u32
pub fn r12w(&self) -> u16
pub fn r12b(&self) -> u8
pub fn set_r12(&mut self, value: u64)
pub fn set_r12d(&mut self, value: u32)
pub fn set_r12w(&mut self, value: u16)
pub fn set_r12b(&mut self, value: u8)
pub fn r13(&self) -> u64
pub fn r13d(&self) -> u32
pub fn r13w(&self) -> u16
pub fn r13b(&self) -> u8
pub fn set_r13(&mut self, value: u64)
pub fn set_r13d(&mut self, value: u32)
pub fn set_r13w(&mut self, value: u16)
pub fn set_r13b(&mut self, value: u8)
pub fn r14(&self) -> u64
pub fn r14d(&self) -> u32
pub fn r14w(&self) -> u16
pub fn r14b(&self) -> u8
pub fn set_r14(&mut self, value: u64)
pub fn set_r14d(&mut self, value: u32)
pub fn set_r14w(&mut self, value: u16)
pub fn set_r14b(&mut self, value: u8)
pub fn r15(&self) -> u64
pub fn r15d(&self) -> u32
pub fn r15w(&self) -> u16
pub fn r15b(&self) -> u8
pub fn set_r15(&mut self, value: u64)
pub fn set_r15d(&mut self, value: u32)
pub fn set_r15w(&mut self, value: u16)
pub fn set_r15b(&mut self, value: u8)
pub fn rsi(&self) -> u64
pub fn esi(&self) -> u32
pub fn si(&self) -> u16
pub fn sil(&self) -> u8
pub fn set_rsi(&mut self, value: u64)
pub fn set_esi(&mut self, value: u32)
pub fn set_si(&mut self, value: u16)
pub fn set_sil(&mut self, value: u8)
pub fn rdi(&self) -> u64
pub fn edi(&self) -> u32
pub fn di(&self) -> u16
pub fn dil(&self) -> u8
pub fn set_rdi(&mut self, value: u64)
pub fn set_edi(&mut self, value: u32)
pub fn set_di(&mut self, value: u16)
pub fn set_dil(&mut self, value: u8)
pub fn rsp(&self) -> u64
pub fn esp(&self) -> u32
pub fn sp(&self) -> u16
pub fn spl(&self) -> u8
pub fn set_rsp(&mut self, value: u64)
pub fn set_esp(&mut self, value: u32)
pub fn set_sp(&mut self, value: u16)
pub fn set_spl(&mut self, value: u8)
pub fn rbp(&self) -> u64
pub fn ebp(&self) -> u32
pub fn bp(&self) -> u16
pub fn bpl(&self) -> u8
pub fn set_rbp(&mut self, value: u64)
pub fn set_ebp(&mut self, value: u32)
pub fn set_bp(&mut self, value: u16)
pub fn set_bpl(&mut self, value: u8)
pub fn rip(&self) -> u64
pub fn eip(&self) -> u32
pub fn ip(&self) -> u16
pub fn _ipl_fake(&self) -> u8
pub fn set_rip(&mut self, value: u64)
pub fn set_eip(&mut self, value: u32)
pub fn set_ip(&mut self, value: u16)
pub fn _set_ipl(&mut self, value: u8)
pub fn cf(&self) -> bool
pub fn set_cf(&mut self, is_set: bool)
pub fn pf(&self) -> bool
pub fn set_pf(&mut self, is_set: bool)
pub fn af(&self) -> bool
pub fn set_af(&mut self, is_set: bool)
pub fn zf(&self) -> bool
pub fn set_zf(&mut self, is_set: bool)
pub fn sf(&self) -> bool
pub fn set_sf(&mut self, is_set: bool)
pub fn df(&self) -> bool
pub fn set_df(&mut self, is_set: bool)
pub fn of(&self) -> bool
pub fn set_of(&mut self, is_set: bool)
pub fn es(&self) -> u16
pub fn cs(&self) -> u16
pub fn ss(&self) -> u16
pub fn ds(&self) -> u16
pub fn fs(&self) -> u16
pub fn gs(&self) -> u16
pub fn rflags(&self) -> u64
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for Registers
impl Send for Registers
impl Sync for Registers
impl Unpin for Registers
impl UnwindSafe for Registers
Blanket Implementations§
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
Causes
self
to use its Binary
implementation when Debug
-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
Causes
self
to use its Octal
implementation when Debug
-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
Formats each item in a sequence. Read more
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Pipes by value. This is generally the method you want to use. Read more
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
Borrows
self
and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
Mutably borrows
self
and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
Borrows
self
, then passes self.as_ref()
into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
Immutable access to the
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
Mutable access to the
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
Immutable access to the
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
Mutable access to the
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
Immutable access to the
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
Mutable access to the
Deref::Target
of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
Calls
.tap()
only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
Calls
.tap_mut()
only in debug builds, and is erased in release
builds. Read more§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
Calls
.tap_borrow()
only in debug builds, and is erased in release
builds. Read more§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
Calls
.tap_borrow_mut()
only in debug builds, and is erased in release
builds. Read more§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
Calls
.tap_ref()
only in debug builds, and is erased in release
builds. Read more§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
Calls
.tap_ref_mut()
only in debug builds, and is erased in release
builds. Read more