SuperAPI AI 工具集

rust-best-practices

编程与开发

查看项目

更新于 10-16 01:15

技能介绍

用途:在编写或审查 Rust 代码时应用 Apollo GraphQL《Rust Best Practices Handbook》中的惯用写法指南。

主要能力:覆盖九章内容——编码风格与惯用法(借用与克隆、Copy、Option/Result、迭代器、注释)、Clippy 与 lint 配置、性能思维(性能分析、避免冗余克隆、栈与堆、零成本抽象)、错误处理(Result 与 panic、thiserror 与 anyhow、错误层级)、自动化测试(命名、单一断言、快照测试)、泛型与分发(静态与动态分发、trait 对象)、类型状态模式、注释与文档、指针与线程安全(Send/Sync)。

必要用法:审查前先并行阅读全部相关章节,再给出反馈。常用命令保持原样:cargo clippy --all-targets --all-features --locked -- -D warnings;cargo clippy -- -D clippy::perf;基准测试需加 --release。关键 lint 包括 redundant_clone、large_enum_variant、needless_collect;建议用 #[expect(clippy::lint)] 替代 #[allow(...)] 并附理由。

要点:优先 &T 而非 .clone(),参数用 &str 而非 String、&[T] 而非 Vec<T>;可失败操作返回 Result,生产代码避免 panic!,测试外不用 unwrap()/expect();库用 thiserror,二进制用 anyhow;优先 ? 传播错误;循环内避免克隆,优先迭代器;测试命名如 process_should_return_error_when_input_empty(),公开 API 用文档测试,快照测试可用 cargo insta;性能关键代码优先泛型静态分发,仅在需要异构集合时用 dyn Trait;类型状态模式用 PhantomData 在编译期约束状态;// 注释解释原因,/// 文档注释说明公开 API,TODO 需关联 issue,库可启用 #![deny(missing_docs)]。

限制:资料未提供该技能的安装方式、平台支持、收费与价格信息,暂未提供。