Files
unshell/unshell-lib/src/lib.rs
T

49 lines
1.1 KiB
Rust
Raw Normal View History

#![no_main]
pub mod config;
2025-12-21 00:35:28 -07:00
mod error;
2025-11-09 12:34:52 -07:00
pub mod logger;
mod announcement;
2025-12-20 22:39:56 -07:00
use std::fmt::{self, Debug};
2025-12-21 00:35:28 -07:00
pub use error::ModuleError;
pub use announcement::Announcement;
2025-12-20 22:39:56 -07:00
pub type Result<T> = std::result::Result<T, ModuleError>;
2025-11-25 17:31:09 -07:00
2025-11-10 22:18:21 -07:00
impl std::error::Error for ModuleError {
fn source(&self) -> Option<&(dyn std::error::Error + 'static)> {
None
}
fn description(&self) -> &str {
"description() is deprecated; use Display"
}
fn cause(&self) -> Option<&dyn std::error::Error> {
Some(self)
}
}
impl fmt::Display for ModuleError {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
f.write_str(format!("{:?}", self).as_str())
}
}
2025-11-13 11:52:01 -07:00
// pub trait Component {
// fn name(&self) -> &'static str;
// // fn start_runtime(&self, manager: Arc<Mutex<Manager>>) -> Option<Box<dyn ModuleRuntime>>;
2025-11-13 11:52:01 -07:00
// fn get_interface(&self) -> Box<dyn Interface>;
// fn clone_box(&self) -> Box<dyn Component>;
// }
2025-11-13 11:52:01 -07:00
// impl Clone for Box<dyn Component> {
// fn clone(&self) -> Box<dyn Component> {
// self.clone_box()
// }
// }