Struct wasmcloud_host::NativeCapability [−][src]
pub struct NativeCapability { /* fields omitted */ }
Expand description
Represents a native capability provider compiled as a shared object library.
These plugins are OS- and architecture-specific, so they will be .so
files on Linux, .dylib
files on macOS, .dll
files on Windows, etc.
Implementations
pub fn from_archive(
archive: &ProviderArchive,
link_target_name: Option<String>
) -> Result<Self>
pub fn from_archive(
archive: &ProviderArchive,
link_target_name: Option<String>
) -> Result<Self>
Reads a capability provider from an archive file. The right architecture/OS plugin library will be chosen from the file, or an error will result if it isn’t found. This call will fail if the archive does not contain a suitable plugin for the CPU architecture/OS of the caller.
pub fn from_instance(
instance: impl CapabilityProvider + 'static,
link_target_name: Option<String>,
claims: Claims<CapabilityProvider>
) -> Result<Self>
pub fn from_instance(
instance: impl CapabilityProvider + 'static,
link_target_name: Option<String>,
claims: Claims<CapabilityProvider>
) -> Result<Self>
This function is to be used for capability embedding. If you are building a custom
wasmCloud host and have a fixed set of capabilities that you want to always be available
to actors, then you can declare a dependency on the capability provider, enable
the static_plugin
feature, and provide an instance of that provider. Be sure to check
that the provider supports capability embedding. You must also provide a set of valid
claims that can be generated from a signed JWT.
Returns the unique ID (public key/subject) of the capability provider
Returns the path where this capability provider’s binary resides/should reside for cache purposes.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for NativeCapability
impl Send for NativeCapability
impl Sync for NativeCapability
impl Unpin for NativeCapability
impl !UnwindSafe for NativeCapability
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self