pub struct ProcessInstance { /* private fields */ }Expand description
A loaded plugin subprocess plus its capability envelope.
Dropping the instance kills the child (SIGKILL on Unix, TerminateProcess on Windows) so a forgotten plugin cannot outlive its host.
Trait Implementations§
Source§impl Drop for ProcessInstance
impl Drop for ProcessInstance
Source§impl SandboxInstance for ProcessInstance
impl SandboxInstance for ProcessInstance
Source§fn call(&mut self, function: &str, args: &[Value]) -> Result<Vec<Value>>
fn call(&mut self, function: &str, args: &[Value]) -> Result<Vec<Value>>
Invoke
function with args. Returns the function’s results.Source§fn grant_capability(&mut self, cap: Capability) -> Result<()>
fn grant_capability(&mut self, cap: Capability) -> Result<()>
Grant
cap to this instance. Grants are idempotent.Source§fn revoke_capability(&mut self, cap: &Capability) -> Result<()>
fn revoke_capability(&mut self, cap: &Capability) -> Result<()>
Revoke the matching capability. Revokes are idempotent.
Auto Trait Implementations§
impl Freeze for ProcessInstance
impl RefUnwindSafe for ProcessInstance
impl Send for ProcessInstance
impl Sync for ProcessInstance
impl Unpin for ProcessInstance
impl UnsafeUnpin for ProcessInstance
impl UnwindSafe for ProcessInstance
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