pub struct RawExtensionImplementation { /* private fields */ }Expand description
A pointer to an extension’s implementation struct.
This type is used to type-erase a reference to the implementation struct of an extension before
transferring it to the consumer through get_extension.
This type is also used to enforce the extension pointer is always valid, as extension
implementations produced from Clack always come from statics and therefore always have the
'static lifetime.
Note this is not the case for all CLAP plugins: extension pointers are only guaranteed to be valid for the lifetime of the instance (plugin or host) they originate from.
Use the RawExtension type to properly use and track the lifetime of extension pointers on
the consumer-side.
Implementations§
Source§impl RawExtensionImplementation
impl RawExtensionImplementation
Sourcepub const fn new<I>(implementation: &'static I) -> RawExtensionImplementation
pub const fn new<I>(implementation: &'static I) -> RawExtensionImplementation
Creates a new pointer from a 'static reference to an implementation struct.
Trait Implementations§
Source§impl Clone for RawExtensionImplementation
impl Clone for RawExtensionImplementation
Source§fn clone(&self) -> RawExtensionImplementation
fn clone(&self) -> RawExtensionImplementation
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for RawExtensionImplementation
Source§impl Debug for RawExtensionImplementation
impl Debug for RawExtensionImplementation
impl Eq for RawExtensionImplementation
Source§impl Hash for RawExtensionImplementation
impl Hash for RawExtensionImplementation
Source§impl Ord for RawExtensionImplementation
impl Ord for RawExtensionImplementation
Source§fn cmp(&self, other: &RawExtensionImplementation) -> Ordering
fn cmp(&self, other: &RawExtensionImplementation) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
Source§impl PartialOrd for RawExtensionImplementation
impl PartialOrd for RawExtensionImplementation
impl StructuralPartialEq for RawExtensionImplementation
Auto Trait Implementations§
impl !Send for RawExtensionImplementation
impl !Sync for RawExtensionImplementation
impl Freeze for RawExtensionImplementation
impl RefUnwindSafe for RawExtensionImplementation
impl Unpin for RawExtensionImplementation
impl UnsafeUnpin for RawExtensionImplementation
impl UnwindSafe for RawExtensionImplementation
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