Expand description
UniStore 核心定义 Crate
职责:
- 定义
Capabilitytrait,所有能力模块的共同契约 - 定义核心错误类型
CapabilityError - 定义能力元数据
CapabilityInfo - 提供能力注册与发现的基础抽象
§设计哲学
- 乐高模块化:此 crate 是“基础板“,所有能力“积木“都安装在其上
- 接口统一:通过 trait 定义统一的能力契约
- 解耦:能力 crate 之间无直接依赖,仅依赖此核心
§使用方式
能力开发者:
ⓘ
use unistore_core::{Capability, CapabilityInfo};
pub struct MyCapability { /* ... */ }
impl Capability for MyCapability {
fn info(&self) -> CapabilityInfo {
CapabilityInfo::new("my-capability", env!("CARGO_PKG_VERSION"))
}
async fn start(&mut self) -> Result<(), CapabilityError> {
// 初始化逻辑
Ok(())
}
async fn stop(&mut self) -> Result<(), CapabilityError> {
// 清理逻辑
Ok(())
}
}应用开发者:
ⓘ
use unistore::UniRuntime;
use unistore_serial::SerialCapability;
let runtime = UniRuntime::builder()
.capability(SerialCapability::new())
.build()?;Modules§
- prelude
- 预导入模块,包含常用类型
Structs§
- Capability
Info - 能力元数据信息
- Capability
Registry - 能力注册表
Enums§
- Capability
Error - 能力错误类型
- Capability
State - 能力状态
Traits§
- Capability
- 能力 trait - 所有扩展能力的共同契约