Update Ch14

This commit is contained in:
Unisko PENG 2023-04-23 13:40:07 +08:00
parent dfa9b642a8
commit bb58823147

View File

@ -80,7 +80,7 @@ Rust 与 Cargo均有着令到咱们所发布的包易于为他人找到并
文件名:`src/lib.rs`
````rust
~~~rust
/// 将一加到所给数字。
/// # Examples
///
@ -93,7 +93,7 @@ Rust 与 Cargo均有着令到咱们所发布的包易于为他人找到并
pub fn add_one(x: i32) -> i32 {
x + 1
}
````
~~~
*清单 14-1函数的文档注释*
@ -213,7 +213,7 @@ error: doctest failed, to rerun pass `--doc`
在第 7 章中,咱们曾讲到过怎样使用 `pub` 关键字把一些程序项目构造为公开,与怎样使用 `use` 关键字,把程序项目带入到作用域。但是,咱们在开发某个代码箱时,对咱们有意义的组织结构(模组树),对于咱们的用户则可能不那么便利。咱们会打算把代码箱结构组织为包含多个级别的层次,但随后某个想要使用定义在层次结构深处类型的人,就可能在找出那个类型是否存在上遇到麻烦。他们可能还会对必须敲入 `use cargo_features_demo::some_module::another_module::UsefulType;`,而非敲入 `use cargo_features_demo::UsefulType;` 而感到恼火。
可喜的是,在代码箱组织结构 *不* 便于其他人在另外的库中使用时,咱们不必重新调整代码箱的内部组织:相反,咱们可通过使用 `pub use`重新导出程序项目而构造出一种不同于咱们的私有组织结构的公开组织结构。重新导出re-export会取一处的公开程序项目而在另一处将其构造为公开就跟这个项目是在另一处被定义过一样。
可喜的是,在代码箱组织结构 *不* 便于其他人在另外的库中使用时,咱们不必重新调整代码箱的内部组织:相反,咱们可通过使用 `pub use`重新导出程序项目而构造出一种不同于咱们的私有组织结构的公开组织结构。重新导出re-export会取一处的公开程序项目而在另一处将其构造为公开就跟这个项目是在另一处被定义过一样。
比如,假设这里构造了用于对一些美术概念建模的一个名为 `art` 的库。这个库里头有两个模组:包含了两个分别名为 `PrimaryColor``SeccondaryColor` 枚举的 `kinds` 模组与包含了一个名为 `mix` 函数的 `utils` 模组,如下清单 14-3 中所示: