pub(crate) struct StoreInner {
pub(crate) objects: StoreObjects,
pub(crate) store: BackendStore,
pub(crate) on_called: Option<Box<dyn FnOnce(StoreMut<'_>) -> Result<OnCalledAction, Box<dyn Error + Send + Sync>>>>,
}Expand description
We require the context to have a fixed memory address for its lifetime since various bits of the VM have raw pointers that point back to it. Hence we wrap the actual context in a box.
Fields§
§objects: StoreObjects§store: BackendStore§on_called: Option<Box<dyn FnOnce(StoreMut<'_>) -> Result<OnCalledAction, Box<dyn Error + Send + Sync>>>>Trait Implementations§
Source§impl AsStoreMut for StoreInner
impl AsStoreMut for StoreInner
Source§fn as_store_mut(&mut self) -> StoreMut<'_>
fn as_store_mut(&mut self) -> StoreMut<'_>
Returns a
StoreMut pointing to the underlying context.Source§fn objects_mut(&mut self) -> &mut StoreObjects
fn objects_mut(&mut self) -> &mut StoreObjects
Returns the ObjectMutable
Source§impl AsStoreRef for StoreInner
impl AsStoreRef for StoreInner
Source§fn as_store_ref(&self) -> StoreRef<'_>
fn as_store_ref(&self) -> StoreRef<'_>
Returns a
StoreRef pointing to the underlying context.Source§fn as_store_async(&self) -> Option<impl AsStoreAsync + 'static>
fn as_store_async(&self) -> Option<impl AsStoreAsync + 'static>
Returns a
StoreAsync if the current
context is asynchronous. The store will be locked since
it’s already active in the current context, but can be used
to spawn new coroutines via
Function::call_async.Auto Trait Implementations§
impl Freeze for StoreInner
impl !RefUnwindSafe for StoreInner
impl !Send for StoreInner
impl !Sync for StoreInner
impl Unpin for StoreInner
impl UnsafeUnpin for StoreInner
impl !UnwindSafe for StoreInner
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>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> 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.