pub struct ERGlobalSettings {
pub link_format: LinkDebugIde,
pub check_known_error_types_fn: fn(&str) -> Option<String>,
pub submit_error_reporter_fn: for<'a> fn(&'a ErrorReport) -> Box<dyn SubmitErrorReport<'a> + 'a>,
}Expand description
Global configuration for the error report system.
Set once at application startup via
GlobalSettings::set_global_settings.
Fields§
§link_format: LinkDebugIdeControls how source locations are rendered in terminal output.
LinkDebugIde::File emits clickable file:// hyperlinks,
LinkDebugIde::Vscode emits vscode://file/ links, and
LinkDebugIde::NoLink outputs plain file:line:column text.
Automatically overridden to LinkDebugIde::NoLink when the
NO_COLOR environment variable is set.
Default: LinkDebugIde::File
check_known_error_types_fn: fn(&str) -> Option<String>Function called during a panic to check if the error message matches a
known issue. Receives the panic message as &str.
Return Some(message) with a user-friendly explanation if the error is
recognized, or None to treat it as an unknown error and generate a
full report.
Used by setup_panic! before building the error submission report.
Default: check_known_error_types_default (always returns None)
submit_error_reporter_fn: for<'a> fn(&'a ErrorReport) -> Box<dyn SubmitErrorReport<'a> + 'a>Function that creates a SubmitErrorReport from an ErrorReport.
Used by setup_panic! to generate error submission reports.
Default: creates a SimpleErrorReport
Implementations§
Source§impl ERGlobalSettings
impl ERGlobalSettings
Sourcepub fn get_or_default_settings() -> Result<RwLockReadGuard<'static, Self>, ErrorReport>
pub fn get_or_default_settings() -> Result<RwLockReadGuard<'static, Self>, ErrorReport>
Read the global settings, initializing with Default if not yet set.
Unlike GlobalSettings::get_global_settings which returns an error
when unset, this method lazily creates a default configuration.
Trait Implementations§
Source§impl Clone for ERGlobalSettings
impl Clone for ERGlobalSettings
Source§fn clone(&self) -> ERGlobalSettings
fn clone(&self) -> ERGlobalSettings
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ERGlobalSettings
impl Debug for ERGlobalSettings
Source§impl Default for ERGlobalSettings
impl Default for ERGlobalSettings
Source§impl From<&ERGlobalSettings> for ErrorFmtSettings
impl From<&ERGlobalSettings> for ErrorFmtSettings
Source§fn from(settings: &ERGlobalSettings) -> Self
fn from(settings: &ERGlobalSettings) -> Self
Source§impl From<ERGlobalSettings> for ErrorFmtSettings
impl From<ERGlobalSettings> for ErrorFmtSettings
Source§fn from(settings: ERGlobalSettings) -> Self
fn from(settings: ERGlobalSettings) -> Self
Source§impl GlobalSettings for ERGlobalSettings
impl GlobalSettings for ERGlobalSettings
Source§type Setting = ERGlobalSettings
type Setting = ERGlobalSettings
Source§fn once_lock() -> &'static OnceLock<RwLock<Self::Setting>>
fn once_lock() -> &'static OnceLock<RwLock<Self::Setting>>
OnceLock that holds this setting.