#[non_exhaustive]pub enum PluginWrapperError {
Show 19 variants
NullPluginInstance,
AlreadyDestroyed,
NulPtr(&'static str),
InvalidParameter(&'static str),
UninitializedPlugin,
PluginCalledDuringInitialization,
Destroying,
InitializationAlreadyFailed,
AlreadyInitialized,
ActivatedPlugin,
DeactivatedPlugin,
DeactivationRequiredForFunction(&'static str),
Panic,
Plugin(PluginError),
StringEncoding(Utf8Error),
InvalidCString(NulError),
ErrorFormatError(Error),
Error(clap_log_severity, Box<dyn Error>),
Message(clap_log_severity, &'static str),
}Expand description
Errors raised by a PluginWrapper.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
NullPluginInstance
The clap_plugin raw pointer was null.
AlreadyDestroyed
The clap_plugin.plugin_data raw pointer was null, which indicates the instance was already
destroyed.
NulPtr(&'static str)
An unexpectedly null raw pointer was encountered.
The given string may contain more information about which pointer was found to be null.
InvalidParameter(&'static str)
An invalid parameter value was encountered.
The given string may contain more information about which parameter was found to be invalid.
UninitializedPlugin
The plugin was not properly initialized (i.e. init was not called).
PluginCalledDuringInitialization
The host tried to call a plugin method while init is running.
Destroying
The host tried to call a plugin method while destroy is running.
InitializationAlreadyFailed
The plugin’s initialization (init) has failed.
AlreadyInitialized
The plugin is already initialized (i.e. a second call to init was attempted).
ActivatedPlugin
An attempt was made to call activate on an already activated plugin.
DeactivatedPlugin
An attempt was made to call an audio-thread function while the plugin was deactivated
(e.g. without previously calling activate).
DeactivationRequiredForFunction(&'static str)
A function which requires the plugin to be deactivated was called while the plugin was still active.
Panic
The plugin panicked during a function call.
Plugin(PluginError)
A given PluginError was raised during a function call.
StringEncoding(Utf8Error)
Bad UTF-8.
InvalidCString(NulError)
Plugin returned a malformed C string.
ErrorFormatError(Error)
Encountered an error while trying to format another PluginWrapperError
Error(clap_log_severity, Box<dyn Error>)
A generic or custom error of a given severity.
Message(clap_log_severity, &'static str)
A constant string message to be displayed.
Implementations§
Source§impl PluginWrapperError
impl PluginWrapperError
Sourcepub fn severity(&self) -> clap_log_severity
pub fn severity(&self) -> clap_log_severity
Returns the severity of this error.
This is mainly useful for logging.
§Example
use clap_sys::ext::log::CLAP_LOG_PLUGIN_MISBEHAVING;
use clack_plugin::extensions::wrapper::PluginWrapperError;
let error = PluginWrapperError::Panic;
assert_eq!(error.severity(), CLAP_LOG_PLUGIN_MISBEHAVING);Sourcepub fn os_error_code(&self) -> Option<i32>
pub fn os_error_code(&self) -> Option<i32>
If this error holds an io::Error, returns its raw OS error.
If not applicable, this returns None instead.
Sourcepub fn format_cstr(&self) -> Cow<'static, CStr>
pub fn format_cstr(&self) -> Cow<'static, CStr>
Sourcepub fn with_severity<E: 'static + Error>(
severity: clap_log_severity,
) -> impl Fn(E) -> PluginWrapperError
pub fn with_severity<E: 'static + Error>( severity: clap_log_severity, ) -> impl Fn(E) -> PluginWrapperError
Returns a closure that maps an error to a PluginWrapperError::Error error of a given
severity.
This is a useful helper method when paired with Result::map_err.
§Example
use clap_sys::ext::log::CLAP_LOG_PLUGIN_MISBEHAVING;
use clack_plugin::extensions::wrapper::PluginWrapperError;
let x: Result<(), _> = Err(std::env::VarError::NotPresent); // Some random error type
let clap_error = x.map_err(PluginWrapperError::with_severity(CLAP_LOG_PLUGIN_MISBEHAVING));
assert_eq!(clap_error.unwrap_err().severity(), CLAP_LOG_PLUGIN_MISBEHAVING);Trait Implementations§
Source§impl Debug for PluginWrapperError
impl Debug for PluginWrapperError
Source§impl Display for PluginWrapperError
impl Display for PluginWrapperError
Source§impl Error for PluginWrapperError
impl Error for PluginWrapperError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()