Crates.io | list-modules |
lib.rs | list-modules |
version | 0.1.6 |
source | src |
created_at | 2023-04-16 08:05:41.138257 |
updated_at | 2023-04-16 19:48:23.657293 |
description | A procedural macro for generating a list of string slices of the names of the modules inside a source code directory of a project. |
homepage | |
repository | https://github.com/maxfierrog/list-modules |
max_upload_size | |
id | 840414 |
size | 6,025 |
This macro creates a constant string slice list of all the module names which are children of an indicated crate module folder. Paths are specified relative to the cargo manifest directory.
For example, calling this macro from mod.rs
in the following file tree
with list_modules::here!("parent/");
...
parent/
mod.rs
child_1.rs
child_2/
mod.rs
internal.rs
other_internal/
...
...
child_3.rs
child_4.rs
...
child_N/
mod.rs
...will result in the following list expansion:
pub const LIST: [&str; N] = [
"child_1",
"child_2",
"child_3",
...
"child_N",
];
Note that this is the only guaranteed behavior.