moduforge_transform/
lib.rs

1//! ModuForge-RS 数据转换模块
2//!
3//! 该模块负责处理文档的转换操作,包括:
4//! - 节点操作(添加、移动、删除、替换)
5//! - 标记操作
6//! - 属性更新
7//! - 批量操作
8//! - 补丁应用
9//! - 增量更新和内存优化
10//!
11//! 主要组件:
12//! - `attr_step`: 属性步骤,处理属性更新操作
13//! - `draft`: 草稿系统,管理文档的临时状态
14//! - `mark_step`: 标记步骤,处理标记的添加和删除
15//! - `node_step`: 节点步骤,处理节点的各种操作
16//! - `patch`: 补丁系统,用于增量更新
17//! - `step`: 步骤定义,定义转换操作的基本接口
18//! - `transform`: 转换系统,协调各种转换操作
19//! - `incremental_pool`: 增量更新的节点池,提供内存优化
20//!
21//! 核心类型:
22//! - `PatchStep`: 补丁步骤,用于应用补丁
23//! - `BatchStep`: 批量步骤,用于执行多个转换操作
24//! - `IncrementalNodePool`: 增量更新的节点池
25//! - `IncrementalPoolManager`: 节点池版本管理器
26
27pub mod attr_step;
28pub mod mark_step;
29pub mod node_step;
30pub mod patch;
31pub mod step;
32pub mod transform;
33use anyhow::Result;
34
35pub type TransformResult<T> = Result<T>;
36
37pub fn transform_error(msg: impl Into<String>) -> anyhow::Error {
38    anyhow::anyhow!("事务应用失败: {}", msg.into())
39}