xtap-core-lib 0.5.1

星TAP实验室通用 Rust 基座:跨平台路径/IO/硬件/MCP HTTP 服务/egui 主题与字体(features 按需裁剪)
Documentation
/*
 * Copyright (c) 2026 星TAP实验室
 * Author: 星TAP实验室 <cscb603@qq.com>
 * Description: 通用 Rust 工业级核心库
 */

//! # xTap Core Lib
//!
//! 星TAP实验室通用 Rust 基座库:跨平台路径 / IO / 硬件信息 / MCP HTTP 服务 /
//! egui 主题与字体。通过 Cargo features 按需裁剪,避免无关依赖进入编译图。
//!
//! ## Features 表
//!
//! | Feature | 激活模块 | 说明 |
//! |---------|---------|------|
//! | `default` | process,path,io,hardware,ui | 开箱即用 |
//! | `process` | `process` | 进程/系统信息(sysinfo) |
//! | `path` | `path` | 跨平台 home/路径解析(dirs) |
//! | `io` | `io` | 文件读写工具 |
//! | `async` | `io::async_io` | 异步 IO(tokio) |
//! | `mmap` | `io::mmap` | 内存映射文件(memmap2) |
//! | `hardware` | `hardware` | CPU/硬件信息(num_cpus, rayon) |
//! | `gpu` | — | GPU 初始化(wgpu,重依赖) |
//! | `self_check` | `self_check` | 自检模块 |
//! | `ui` | `ui` | egui 主题/字体/图标 |
//! | `mcp` | `mcp` | MCP HTTP 服务(axum, tokio) |
//! | `gui` | — | GUI 标记(配合 ui) |
//!
//! `error` / `shell` 模块无条件编译(不依赖任何 feature)。
//!
//! ## 快速开始
//!
//! ```toml
//! [dependencies]
//! xtap-core-lib = { version = "0.5", features = ["path", "mcp"] }
//! ```
//!
//! ```rust,ignore
//! use xtap_core_lib::path::get_home_dir;
//! use xtap_core_lib::error::Result;
//!
//! fn main() -> Result<()> {
//!     let home = get_home_dir()?;
//!     println!("home: {}", home.display());
//!     Ok(())
//! }
//! ```

pub mod error;
#[cfg(feature = "hardware")]
pub mod hardware;
#[cfg(feature = "io")]
pub mod io;
#[cfg(feature = "mcp")]
pub mod mcp;
#[cfg(feature = "async")]
pub use io::async_io;
#[cfg(feature = "mmap")]
pub use io::mmap;
#[cfg(feature = "path")]
pub mod path;
#[cfg(feature = "process")]
pub mod process;
#[cfg(feature = "self_check")]
pub mod self_check;
pub mod shell;
#[cfg(feature = "ui")]
pub mod ui;

pub use error::{CoreError, Result};

/// 初始化全局日志系统
pub fn init_logger() {
    tracing_subscriber::fmt::init();
}