clamber_core/
lib.rs

1//!
2//! Clamber Core 是一个面向 Rust 项目的通用核心工具库,提供:
3//! - 配置管理(YAML/TOML/JSON + 环境变量覆盖 + 多文件合并)
4//! - JWT 令牌生成与校验
5//! - 分布式唯一 ID(Snowflake)
6//! - 基于 tracing 的结构化日志初始化
7//! - 统一错误处理(thiserror)
8//!
9//! 快速开始示例:
10//!
11//! ```no_run
12//! use serde::{Serialize, Deserialize};
13//! use clamber_core::token::{JwtConfig, generate_token, verify_token};
14//!
15//! #[derive(Serialize, Deserialize, Debug, PartialEq)]
16//! struct User { id: String, username: String, role: String }
17//!
18//! fn main() -> clamber_core::Result<()> {
19//!     let user = User { id: "1".into(), username: "alice".into(), role: "admin".into() };
20//!     let token = generate_token(&user, JwtConfig::default())?;
21//!     let decoded: User = verify_token(&token)?;
22//!     assert_eq!(user, decoded);
23//!     Ok(())
24//! }
25//! ```
26//!
27//! 更多示例请查看项目 README 以及 examples 目录。
28
29pub mod config;
30pub mod error;
31pub mod snowflake;
32pub mod token;
33pub mod tracing_logs;
34
35pub use error::{ClamberError, Result};
36pub use tracing_logs::{LogConfig, logger_start_with_config};
37
38/// re-export: token 模块的主要类型与函数
39pub use token::{JwtConfig, JwtManager, generate_token, is_valid_token, verify_token};
40
41/// re-export: snowflake 模块的主要类型
42pub use snowflake::{SnowflakeConfig, SnowflakeIdInfo, SnowflakeManager};
43
44/// re-export: config 模块的主要类型与函数
45pub use config::{
46    ConfigBuilder, ConfigFormat, ConfigManager, auto_load_config, get_config_paths, load_config,
47    load_config_with_env,
48};
49
50/// snowflake 便利函数(使用前缀避免命名冲突)
51pub mod snowflake_utils {
52    //! 便利函数:Snowflake ID 相关的快捷 API。
53    pub use crate::snowflake::{
54        generate_id, generate_ids, generate_string_id, parse_id, parse_string_id,
55    };
56}