SuperAPI AI 工具集

rust-project-structure

编程与开发

查看项目

更新于 10-15 21:48

技能介绍

用途:组织 Rust 项目结构,管理模块关系,搭建多包项目与脚手架。

主要能力:包与 crate 概念及二进制/库混合布局(src/lib.rs、src/main.rs、src/bin/);模块文件系统布局与 mod 声明嵌套;pub 可见性体系(pub、pub(crate)、pub(super)、pub(self));use 路径模式(绝对/相对、嵌套 A::{B,C}、glob、别名、pub use 重导出);外部 crate 引用;workspace 多包布局(members、resolver、共享 Cargo.lock、path 依赖);条件编译与 cfg、cfg_attr;脚手架命令 cargo new、cargo init、cargo generate。

用法:先确认项目类型(单 crate、多 crate 或工作空间),按用途命名,从 lib.rs 按功能域拆分模块,设计 pub/pub(crate) 接口,组织 use 路径,最后用 cargo check 验证。相关命令:cargo new my-app;cargo new my-lib --lib;cargo init;cargo new --vcs none;cargo install cargo-generate;cargo generate --git https://github.com/rust-unofficial/patterns.git。

适用场景:组织 Rust 项目结构、模块间引用、pub 可见性规则、多 crate 工作空间布局。

限制与注意:需先理解所有权与模块基础;Cargo.toml 配置、语法基础、测试组织不在范围内,分别对应其他技能。crate:: 指当前 crate 根,::other_crate:: 为外部 crate 绝对路径;pub(crate) 需 edition 2018+;2018 起推荐 module_name.rs 而非 mod.rs;workspace resolver 影响特性解析;#[path] 会绕过默认文件树约定。资料未提供收费、平台支持等信息。本技能不收集、存储或传输任何用户数据。