SuperAPI AI 工具集

rust-lombok-macros

编程与开发

查看项目

更新于 10-15 21:48

技能介绍

用途:把 lombok-macros 当作过程宏依赖和 API 生成器使用,而不是 Java Lombok 的完整替代。适用于 DTO、配置快照、内部消息、测试夹具等字段组合均有效的数据载体;用于减少机械方法、用 CustomDebug 排除敏感字段、审查或迁移现有属性与手写方法。

主要能力:提供 Getter、GetterMut、Setter、Data、New、CustomDebug、DisplayDebug/DisplayDebugFormat 等派生。注意 2.0.32 不导出 Lombok 派生;Debug 和 Clone 属标准库,非本 crate 生成;DisplayDebug 基于 Debug 实现 Display,输出不作为稳定展示契约。

使用方式:先用 rustc --version --verbose、cargo metadata --format-version 1、cargo tree -i lombok-macros -e features 确认基线;用 cargo add lombok-macros 或 cargo add lombok-macros@2.0.32 添加依赖,不写 latest。按字段最小化选择派生:Getter、GetterMut、Setter、Data、New、CustomDebug。属性示例:use lombok_macros::{CustomDebug, Getter, New, Setter}; 并在结构体上 #[derive(Getter, Setter, New, CustomDebug)]、#[new(pub(crate))]、字段上 #[get(pub)]、#[set(pub, type(Into<String>))]、#[debug(skip)]、#[new(skip)]。2.0.32 解析器要求 type(clone),不写 #[get(pub, clone)]。验证命令:cargo fmt --all --check、cargo check --workspace --all-targets --all-features、cargo test --workspace --all-targets --all-features、cargo clippy --workspace --all-targets --all-features -- -D warnings。

适用场景:字段组合始终有效的数据载体、内部诊断、测试夹具。

限制:不要为需要校验的领域实体、值对象或安全边界生成方法;不要用于有稳定公共契约、自定义错误、审计或副作用的方法;不要用于必须保留缺失或错误信息的 Option/Result 访问路径;2.0.32 不提供 builder、默认值策略、序列化、比较或哈希。生成方法默认不校验,Setter 暴露写权限,Data 与 New 的 API 面可能过宽。敏感字段需 #[debug(skip)] 并测试输出,不要以 Debug 作为用户输出。

依赖版本、特性与供应链策略应交给 rust-cargo-build;通用过程宏实现交给 rust-macros;API 与安全审查交给 rust-code-review;测试设计交给 rust-testing。资料未提供具体收费、价格与平台信息。