Struct wasmer_wasix::syscalls::Store
pub(crate) struct Store {
pub(crate) inner: Box<StoreInner>,
}
Expand description
The store represents all global state that can be manipulated by WebAssembly programs. It consists of the runtime representation of all instances of functions, tables, memories, and globals that have been allocated during the lifetime of the abstract machine.
The Store
holds the engine (that is —amongst many things— used to compile
the Wasm bytes into a valid module artifact).
Spec: https://webassembly.github.io/spec/core/exec/runtime.html#store
Fields§
§inner: Box<StoreInner>
Implementations§
§impl Store
impl Store
pub fn set_trap_handler(
&mut self,
handler: Option<Box<dyn Fn(i32, *const siginfo_t, *const c_void) -> bool + Send + Sync>>,
)
pub fn set_trap_handler( &mut self, handler: Option<Box<dyn Fn(i32, *const siginfo_t, *const c_void) -> bool + Send + Sync>>, )
Set the trap handler in this store.
pub fn engine(&self) -> &Engine
pub fn engine(&self) -> &Engine
Returns the [Engine
].
pub fn engine_mut(&mut self) -> &mut Engine
pub fn engine_mut(&mut self) -> &mut Engine
Returns mutable reference to [Engine
]
pub fn same(a: &Store, b: &Store) -> bool
pub fn same(a: &Store, b: &Store) -> bool
Checks whether two stores are identical. A store is considered equal to another store if both have the same engine.
pub fn id(&self) -> StoreId
pub fn id(&self) -> StoreId
Returns the ID of this store
Trait Implementations§
§impl AsEngineRef for Store
impl AsEngineRef for Store
§fn as_engine_ref(&self) -> EngineRef<'_>
fn as_engine_ref(&self) -> EngineRef<'_>
Returns a
EngineRef
pointing to the underlying context.§fn maybe_as_store(&self) -> Option<StoreRef<'_>>
fn maybe_as_store(&self) -> Option<StoreRef<'_>>
Returns an optional
StoreRef
is the passed reference is a Store
.§impl AsStoreMut for Store
impl AsStoreMut for Store
§fn as_store_mut(&mut self) -> StoreMut<'_>
fn as_store_mut(&mut self) -> StoreMut<'_>
Returns a
StoreMut
pointing to the underlying context.§fn objects_mut(&mut self) -> &mut StoreObjects
fn objects_mut(&mut self) -> &mut StoreObjects
Returns the ObjectMutable
§impl AsStoreRef for Store
impl AsStoreRef for Store
§fn as_store_ref(&self) -> StoreRef<'_>
fn as_store_ref(&self) -> StoreRef<'_>
Returns a
StoreRef
pointing to the underlying context.impl Send for Store
impl Sync for Store
Auto Trait Implementations§
impl Freeze for Store
impl !RefUnwindSafe for Store
impl Unpin for Store
impl !UnwindSafe for Store
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> Pointee for T
impl<T> Pointee for T
§impl<T> Upcastable for T
impl<T> Upcastable for T
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_box(self: Box<T>) -> Box<dyn Any>
§impl<T> Upcastable for T
impl<T> Upcastable for T
§fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
§fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref
§fn upcast_any_box(self: Box<T>) -> Box<dyn Any>
fn upcast_any_box(self: Box<T>) -> Box<dyn Any>
upcast boxed dyn