Struct lunatic_runtime::api::process::ProcessEnvironment[][src]

pub struct ProcessEnvironment<T: Clone> { /* fields omitted */ }

This structure is captured inside HOST function closures passed to Wasmtime’s Linker. It allows us to expose Lunatic runtime functionalities inside host functions, like async yields or Instance memory access.

Safety

Having a mutable slice of Wasmtime’s memory is generally unsafe, but Lunatic always uses static memories and one memory per instance. This makes it somewhat safe?

Implementations

impl<T: Clone + Sized> ProcessEnvironment<T>[src]

pub fn new(memory: Memory, yielder: usize) -> Self[src]

Trait Implementations

impl<T: Sized + Clone> Clone for ProcessEnvironment<T>[src]

impl<T: Sized + Clone> Drop for ProcessEnvironment<T>[src]

impl<T: Sized + Clone> Executor for ProcessEnvironment<T>[src]

type Return = T

Auto Trait Implementations

impl<T> !RefUnwindSafe for ProcessEnvironment<T>

impl<T> !Send for ProcessEnvironment<T>

impl<T> !Sync for ProcessEnvironment<T>

impl<T> Unpin for ProcessEnvironment<T> where
    T: Unpin

impl<T> !UnwindSafe for ProcessEnvironment<T>

Blanket Implementations

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

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

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

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

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

impl<T> Pointable for T

type Init = T

The type for initializers.

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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<V, T> VZip<V> for T where
    V: MultiLane<T>,