1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
//! # 错误处理系统
//!
//! AnvilKit 的统一错误处理系统,提供结构化的错误类型和处理机制。
//!
//! ## 设计原则
//!
//! 1. **统一性**: 所有 AnvilKit 组件使用统一的错误类型
//! 2. **可扩展性**: 支持添加新的错误类别和上下文信息
//! 3. **用户友好**: 提供清晰的错误消息和调试信息
//! 4. **性能优化**: 错误路径的开销最小化
//!
//! ## 错误分类
//!
//! - **系统错误**: 渲染、物理、音频等子系统错误
//! - **资源错误**: 资源加载、管理相关错误
//! - **配置错误**: 配置文件、参数验证错误
//! - **运行时错误**: 游戏逻辑运行时错误
//!
//! ## 使用示例
//!
//! ```rust
//! use anvilkit_core::error::{AnvilKitError, Result};
//!
//! fn load_texture(path: &str) -> Result<()> {
//! if path.is_empty() {
//! return Err(AnvilKitError::asset("纹理路径不能为空"));
//! }
//!
//! // 模拟加载失败
//! Err(AnvilKitError::asset(format!("无法加载纹理: {}", path)))
//! }
//!
//! fn main() {
//! match load_texture("") {
//! Ok(_) => println!("加载成功"),
//! Err(e) => {
//! eprintln!("错误: {}", e);
//! eprintln!("错误类型: {:?}", e.category());
//! }
//! }
//! }
//! ```
// 重新导出主要类型
pub use ;
/// AnvilKit 的标准 Result 类型
pub type Result<T> = Result;