[−][src]Struct dynasmrt::UncommittedModifier
This struct is a wrapper around an Assembler
normally created using the
Assembler.alter_uncommitted
method. It allows the user to edit parts
of the assembling buffer that cannot be determined easily or efficiently
in advance. Due to limitations of the label resolution algorithms, this
assembler does not allow labels to be used.
Implementations
impl<'a> UncommittedModifier<'a>
[src]
pub fn new(
buffer: &mut Vec<u8>,
base_offset: AssemblyOffset
) -> UncommittedModifier<'_>
[src]
buffer: &mut Vec<u8>,
base_offset: AssemblyOffset
) -> UncommittedModifier<'_>
create a new uncommittedmodifier
pub fn goto(&mut self, offset: AssemblyOffset)
[src]
Sets the current modification offset to the given value
pub fn check(&mut self, offset: AssemblyOffset) -> Result<(), DynasmError>
[src]
Checks that the current modification offset is not larger than the specified offset.
pub fn check_exact(&mut self, offset: AssemblyOffset) -> Result<(), DynasmError>
[src]
Checks that the current modification offset is exactly the specified offset.
Trait Implementations
impl<'a> Debug for UncommittedModifier<'a>
[src]
impl<'a> DynasmApi for UncommittedModifier<'a>
[src]
pub fn offset(&self) -> AssemblyOffset
[src]
pub fn push(&mut self, value: u8)
[src]
pub fn align(&mut self, alignment: usize, with: u8)
[src]
pub fn push_i8(&mut self, value: i8)
[src]
pub fn push_i16(&mut self, value: i16)
[src]
pub fn push_i32(&mut self, value: i32)
[src]
pub fn push_i64(&mut self, value: i64)
[src]
pub fn push_u16(&mut self, value: u16)
[src]
pub fn push_u32(&mut self, value: u32)
[src]
pub fn push_u64(&mut self, value: u64)
[src]
pub fn runtime_error(&self, msg: &'static str) -> !
[src]
impl<'a, 'b> Extend<&'b u8> for UncommittedModifier<'a>
[src]
pub fn extend<T>(&mut self, iter: T) where
T: IntoIterator<Item = &'b u8>,
[src]
T: IntoIterator<Item = &'b u8>,
pub fn extend_one(&mut self, item: A)
[src]
pub fn extend_reserve(&mut self, additional: usize)
[src]
impl<'a> Extend<u8> for UncommittedModifier<'a>
[src]
pub fn extend<T>(&mut self, iter: T) where
T: IntoIterator<Item = u8>,
[src]
T: IntoIterator<Item = u8>,
pub fn extend_one(&mut self, item: A)
[src]
pub fn extend_reserve(&mut self, additional: usize)
[src]
Auto Trait Implementations
impl<'a> RefUnwindSafe for UncommittedModifier<'a>
[src]
impl<'a> Send for UncommittedModifier<'a>
[src]
impl<'a> Sync for UncommittedModifier<'a>
[src]
impl<'a> Unpin for UncommittedModifier<'a>
[src]
impl<'a> !UnwindSafe for UncommittedModifier<'a>
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,