thiserror
是一个 Rust 库,用于简化错误处理。它本身是跨平台的,因为它不依赖于特定平台的特性。你可以在不同的操作系统(如 Windows、macOS 和 Linux)和架构(如 x86、x86_64、ARM 等)上使用 thiserror
。
要在你的 Rust 项目中使用 thiserror
,你需要将其添加到你的 Cargo.toml
文件中:
[dependencies] thiserror = "1.0"
然后,在你的代码中,你可以使用 thiserror
来定义错误类型:
use thiserror::Error; #[derive(Error, Debug)] pub enum MyError { #[error("An IO error occurred: {0}")] IoError(#[from] std::io::Error), #[error("A custom error occurred: {0}")] CustomError(String), }
这里,我们定义了一个名为 MyError
的枚举,它包含了两种错误类型:IoError
和 CustomError
。IoError
是一个从 std::io::Error
派生的错误,而 CustomError
是一个包含字符串消息的自定义错误。通过使用 #[derive(Error, Debug)]
宏,我们可以自动为这个枚举生成错误处理代码。