[−][src]Struct kpal_plugin::PluginData
An opaque struct that contains the state of an individual plugin.
The daemon does not actually work directly with structs provided by a plugin library. Instead, they are hidden behind pointers to opaque structs of this type. The kpal-plugin FFI code takes care of casting the pointers back into the appropriate type inside the library code.
Notes
In Rust, an opaque struct is defined as a struct with a field that is a zero-length array of unsigned 8-bit integers. It is used to hide the plugin's state, forcing all interactions with the data through the functions in the vtable instead.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for PluginData
impl Send for PluginData
impl Sync for PluginData
impl Unpin for PluginData
impl UnwindSafe for PluginData
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,