linapi/
error.rs

1//! Error handling stuff
2use displaydoc::Display;
3use std::io;
4use thiserror::Error;
5
6/// Error type for [`crate::system::modules`]
7#[derive(Debug, Display, Error)]
8pub enum ModuleError {
9    /// I/O Error
10    Io(#[from] io::Error),
11
12    /// Couldn't load module {0}: {1}
13    LoadError(String, String),
14
15    /// Couldn't unload module {0}: {1}
16    UnloadError(String, String),
17
18    /// Module was invalid: `{0}`
19    InvalidModule(String),
20}
21
22/// Error text.
23pub(crate) mod text {
24    pub const INVALID_EXTENSION: &str = "invalid or missing extension";
25
26    pub const COMPRESSION: &str = "unsupported or invalid compression";
27
28    pub const NOT_FOUND: &str = "not found";
29
30    pub const NAME: &str = "invalid module name";
31
32    pub const PARAMETER: &str = "invalid module parameter name";
33
34    pub const MODINFO: &str = "invalid .modinfo";
35}