pub struct BundleExtension { /* private fields */ }Expand description
Auto-generated bindings for an instance a component which
implements the world bundle-extension.
This structure can be created through a number of means depending on your requirements and what you have on hand:
-
The most convenient way is to use
BundleExtension::instantiatewhich only needs aStore,Component, andLinker. -
Alternatively you can create a
BundleExtensionPreahead of time with aComponentto front-load string lookups of exports once instead of per-instantiation. This method then usesBundleExtensionPre::instantiateto create aBundleExtension. -
If you’ve instantiated the instance yourself already then you can use
BundleExtension::new.
These methods are all equivalent to one another and move around the tradeoff of what work is performed when.
Implementations§
Source§impl BundleExtension
impl BundleExtension
Sourcepub fn instantiate<_T>(
store: impl AsContextMut<Data = _T>,
component: &Component,
linker: &Linker<_T>,
) -> Result<BundleExtension>
pub fn instantiate<_T>( store: impl AsContextMut<Data = _T>, component: &Component, linker: &Linker<_T>, ) -> Result<BundleExtension>
Convenience wrapper around BundleExtensionPre::new and
BundleExtensionPre::instantiate.
Sourcepub fn new(
store: impl AsContextMut,
instance: &Instance,
) -> Result<BundleExtension>
pub fn new( store: impl AsContextMut, instance: &Instance, ) -> Result<BundleExtension>
Convenience wrapper around BundleExtensionIndices::new and
BundleExtensionIndices::load.
Sourcepub async fn instantiate_async<_T>(
store: impl AsContextMut<Data = _T>,
component: &Component,
linker: &Linker<_T>,
) -> Result<BundleExtension>where
_T: Send,
pub async fn instantiate_async<_T>(
store: impl AsContextMut<Data = _T>,
component: &Component,
linker: &Linker<_T>,
) -> Result<BundleExtension>where
_T: Send,
Convenience wrapper around BundleExtensionPre::new and
BundleExtensionPre::instantiate_async.
pub fn add_to_linker<T, D>(
linker: &mut Linker<T>,
host_getter: fn(&mut T) -> D::Data<'_>,
) -> Result<()>where
D: HostWithStore + HostWithStore + HostWithStore + HostWithStore,
for<'a> D::Data<'a>: Host + Host + Host + Host,
T: 'static,
pub fn greentic_extension_base0_2_0_manifest(&self) -> &Guest
pub fn greentic_extension_base0_2_0_lifecycle(&self) -> &Guest
pub fn greentic_extension_bundle0_2_0_recipes(&self) -> &Guest
pub fn greentic_extension_bundle0_2_0_bundling(&self) -> &Guest
Auto Trait Implementations§
impl Freeze for BundleExtension
impl RefUnwindSafe for BundleExtension
impl Send for BundleExtension
impl Sync for BundleExtension
impl Unpin for BundleExtension
impl UnsafeUnpin for BundleExtension
impl UnwindSafe for BundleExtension
Blanket Implementations§
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
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>
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