pub struct WasmPluginCapabilities {
pub can_read_table: Vec<String>,
pub can_write_table: Vec<String>,
pub can_index_search: bool,
pub can_vector_search: bool,
pub can_call_plugin: Vec<String>,
pub memory_limit_bytes: u64,
pub fuel_limit: u64,
pub timeout_ms: u64,
}Expand description
Capabilities granted to a WASM plugin
This struct defines what a plugin can and cannot do. Capability violations result in immediate trap.
Fields§
§can_read_table: Vec<String>Tables the plugin can read (glob patterns supported)
can_write_table: Vec<String>Tables the plugin can write (glob patterns supported)
can_index_search: boolCan perform index searches
can_vector_search: boolCan perform vector similarity search
can_call_plugin: Vec<String>Can call other plugins
memory_limit_bytes: u64Memory limit in bytes
fuel_limit: u64Fuel limit (instruction count)
timeout_ms: u64Timeout in milliseconds
Implementations§
Source§impl WasmPluginCapabilities
impl WasmPluginCapabilities
Trait Implementations§
Source§impl Clone for WasmPluginCapabilities
impl Clone for WasmPluginCapabilities
Source§fn clone(&self) -> WasmPluginCapabilities
fn clone(&self) -> WasmPluginCapabilities
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for WasmPluginCapabilities
impl Debug for WasmPluginCapabilities
Auto Trait Implementations§
impl Freeze for WasmPluginCapabilities
impl RefUnwindSafe for WasmPluginCapabilities
impl Send for WasmPluginCapabilities
impl Sync for WasmPluginCapabilities
impl Unpin for WasmPluginCapabilities
impl UnsafeUnpin for WasmPluginCapabilities
impl UnwindSafe for WasmPluginCapabilities
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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