1 个不稳定版本
0.1.0 | 2023年1月30日 |
---|
#542 in GUI
77KB
168 行
panicui
描述
panicui通过利用用户界面提供了一种简单的调试解决方案。
panicui允许您使用7行代码创建恐慌钩子,以打开崩溃日志窗口。
为什么使用panicui?
1. 极其轻量级
上面程序的二进制大小(未strip,带有调试符号):~1,010KB(0.98MB)
2. 快速构建时间
panicui只使用一个直接依赖项,fltk-rs。
3. 跨平台兼容
panicui使用fltk进行UI,它在几乎所有平台上都有效。这包括
- UNIX
- Linux (X11)
- Windows
- MacOS X
示例用法
更多示例可在示例文件夹中找到。
#![windows_subsystem = "windows"]
use panicui::app::PanicApplication;
use panicui::style::Style;
use panicui::window::PanicWindow;
use std::backtrace::Backtrace;
use std::panic;
use std::panic::PanicInfo;
fn panic_hook(info: &PanicInfo) {
let backtrace = Backtrace::force_capture();
let crash_text = format!("{info}\n{backtrace}");
let win = PanicWindow::new(Style::default(), crash_text);
let mut app = PanicApplication::new(win);
app.run().expect("Unable to run application.");
}
fn main() {
panic::set_hook(Box::new(panic_hook));
// Cause some random panic.
Result::<(), _>::Err(5i32).unwrap();
}
依赖项
~14MB
~305K SLoC