pub struct LoadOutcome {
pub plugin_id: String,
pub version: String,
pub effective_capabilities: Vec<String>,
pub denied_capabilities: Vec<String>,
pub scalars_registered: Vec<String>,
pub aggregates_registered: Vec<String>,
pub procedures_registered: Vec<String>,
pub pool: Arc<ExtismInstancePool<Plugin>>,
}Expand description
Outcome of a successful ExtismLoader::load.
Carries the diagnostic state the caller (typically Uni::load_wasm_extism)
needs to construct a PluginHandle, surface denied capabilities to the
user, and keep the live plugin alive for the duration of the
registration.
Fields§
§plugin_id: StringReverse-DNS plugin id from the manifest.
version: StringPlugin version from the manifest.
effective_capabilities: Vec<String>Capabilities granted to the plugin (intersection of declared ∩ host).
denied_capabilities: Vec<String>Capabilities the plugin requested but the host did not grant.
scalars_registered: Vec<String>Qnames registered as scalar fns.
aggregates_registered: Vec<String>Qnames registered as aggregate fns.
procedures_registered: Vec<String>Qnames registered as procedures.
pool: Arc<ExtismInstancePool<Plugin>>The instance pool, shared across every adapter bound to this
plugin. Adapters hold an Arc clone; the pool is kept alive as
long as any adapter remains in the registry.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for LoadOutcome
impl !UnwindSafe for LoadOutcome
impl Freeze for LoadOutcome
impl Send for LoadOutcome
impl Sync for LoadOutcome
impl Unpin for LoadOutcome
impl UnsafeUnpin for LoadOutcome
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: Sized + AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: Sized + AsFilelike,
Set the “status” flags for the
self file descriptor. Read moreSource§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>
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