[][src]Struct dynasmrt::ExecutableBuffer

pub struct ExecutableBuffer { /* fields omitted */ }

A structure holding a buffer of executable memory

Methods

impl ExecutableBuffer[src]

A structure wrapping some executable memory. It dereferences into a &u8 slice.

pub fn ptr(&self, offset: AssemblyOffset) -> *const u8[src]

Obtain a pointer into the executable memory from an offset into it. When an offset returned from DynasmLabelApi::offset is used, the resulting pointer will point to the start of the first instruction after the offset call, which can then be jumped or called to divert control flow into the executable buffer. Note that if this buffer is accessed through an Executor, these pointers will only be valid as long as its lock is held. When no locks are held, The assembler is free to relocate the executable buffer when it requires more memory than available.

Trait Implementations

impl Deref for ExecutableBuffer[src]

type Target = [u8]

The resulting type after dereferencing.

impl Debug for ExecutableBuffer[src]

Auto Trait Implementations

impl Sync for ExecutableBuffer

impl Send for ExecutableBuffer

impl Unpin for ExecutableBuffer

impl RefUnwindSafe for ExecutableBuffer

impl UnwindSafe for ExecutableBuffer

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]