Struct extism_runtime::Plugin
source · pub struct Plugin {
pub module: Module,
pub linker: Linker<Internal>,
pub instance: Instance,
pub last_error: RefCell<Option<CString>>,
pub memory: PluginMemory,
pub manifest: Manifest,
pub vars: BTreeMap<String, Vec<u8>>,
pub should_reinstantiate: bool,
pub timer_id: Uuid,
}Expand description
Plugin contains everything needed to execute a WASM function
Fields§
§module: Module§linker: Linker<Internal>§instance: Instance§last_error: RefCell<Option<CString>>§memory: PluginMemory§manifest: Manifest§vars: BTreeMap<String, Vec<u8>>§should_reinstantiate: bool§timer_id: UuidImplementations§
source§impl Plugin
impl Plugin
sourcepub fn new<'a>(
wasm: impl AsRef<[u8]>,
imports: impl IntoIterator<Item = &'a Function>,
with_wasi: bool
) -> Result<Plugin, Error>
pub fn new<'a>(
wasm: impl AsRef<[u8]>,
imports: impl IntoIterator<Item = &'a Function>,
with_wasi: bool
) -> Result<Plugin, Error>
Create a new plugin from the given WASM code
pub fn error<E>(&self, e: impl Debug, x: E) -> E
sourcepub fn clear_error(&self)
pub fn clear_error(&self)
Unset last_error field
sourcepub fn set_input(&mut self, input: *const u8, len: usize)
pub fn set_input(&mut self, input: *const u8, len: usize)
Store input in memory and initialize Internal pointer
pub fn dump_memory(&self)
pub fn reinstantiate(&mut self) -> Result<(), Error>
pub fn has_wasi(&self) -> bool
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Plugin
impl !Send for Plugin
impl !Sync for Plugin
impl Unpin for Plugin
impl !UnwindSafe for Plugin
Blanket Implementations§
§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
§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.