1 个稳定版本

使用旧的 Rust 2015

1.0.0 2020 年 3 月 14 日

#1789Rust 模式

MIT/Apache

11KB
54

mods!


更简洁的模块声明,由 @NikolaiVazquez 提供!

此库允许您以当前语法不允许的方式声明模块。

示例

要声明多个公共模块,只需在模块列表前放置 pub

mods::mods! {
    pub puppy, kitty;
}

这适用于所有可见性修饰符

mods::mods! {
    pub a, b;        // Visible anywhere, even outside the module
    pub(crate) c, d; // Visible anywhere within the crate
    pub(super) e, f; // Visible to the parent module
    g, h;            // Visible to the current module
}

没有 mods! 宏,相同的代码要简洁得多。这是宏展开后的结果

pub mod a;
pub mod b;
pub(crate) mod c;
pub(crate) mod d;
pub(super) mod e;
pub(super) mod f;
mod g;
mod h;

安装

此软件包在 crates.io 上可用,可以通过将以下内容添加到项目 Cargo.toml

[dependencies]
mods = "1.0.0"

最低支持 Rust 版本 (MSRV)

此库需要 Rust 1.9.0 作为最低版本,并将与所有后续版本一起工作。

这是因为之前的版本无法在子模块中具有 mod x; 声明 当测试此功能时 我们会得到一个错误,抱怨模块文件不在 "src" 目录中。

Rust 2015

如果您不使用 Rust 2018,请将其添加到软件包根目录 (main.rslib.rs)

#[macro_use]
extern crate mods;

然后您可以直接在任何地方使用宏

mods! {
    pub puppy, kitty;
}

愿望

如果能这样就好了

pub mod puppy, kitty;

或者与 use 导入匹配的语法

pub mod {puppy, kitty};

更改

有关从版本到版本的所有更改的详尽列表,请参阅 CHANGELOG.md

许可

本项目可使用以下任一许可证发布

无运行时依赖