pub struct LoadedPlugin {
pub info: PluginInfo,
pub vtable: *const c_void,
pub free_buffer: Option<unsafe extern "C" fn(*mut u8, usize)>,
pub method_count: u32,
pub library: Arc<Library>,
}Expand description
A single validated plugin from a loaded library.
Fields§
§info: PluginInfoOwned metadata copied from the FFI descriptor.
vtable: *const c_voidRaw vtable pointer (points into the loaded library’s memory).
free_buffer: Option<unsafe extern "C" fn(*mut u8, usize)>Free function for plugin-allocated buffers.
method_count: u32Total number of methods in the vtable.
library: Arc<Library>Reference to the library to keep it alive.
Trait Implementations§
Source§impl Debug for LoadedPlugin
impl Debug for LoadedPlugin
impl Send for LoadedPlugin
impl Sync for LoadedPlugin
Auto Trait Implementations§
impl Freeze for LoadedPlugin
impl RefUnwindSafe for LoadedPlugin
impl Unpin for LoadedPlugin
impl UnsafeUnpin for LoadedPlugin
impl UnwindSafe for LoadedPlugin
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