同一文件夹中所有文件的生 rust 可见性

0lvr5msh  于 2023-01-26  发布在  其他
关注(0)|答案(1)|浏览(137)

我已经把我的 rust 项目分成多个文件在同一个文件夹中整洁。现在每个文件被视为一个mod自己,我必须标记一切pub(crate)。有没有一种方法来公布所有符号在一个文件中为同一个机箱使用,或标记文件不作为模块自己,但我的main.rs的一部分?

oyt4ldly

oyt4ldly1#

Rust有一个内置的宏include!,它的工作原理类似于c中的#include,但请注意,这不是它的预期用途。该宏通常用于包含生成的文件,如opengl绑定,这些文件不是用于编辑的。Rust analyzer不会在包含的文件中提供intelisense。正如@Chayim Friedman提到的,使用pub(crate)是一种方式,但是:

struct A; // private struct
pub(crate) struct B; // public to whole crate
pub struct C; // public to other crates, but only if this is library
pub(super) struct D; // public to parent module

如果你有main,我假设你的项目是应用程序,而不是库,所以你只需要pub

相关问题