[][src]Struct kpal_plugin::PluginData

#[repr(C)]
pub struct PluginData { /* fields omitted */ }

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

impl Debug for PluginData[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.