Skip to content

Rust procedural macro for generating a constant list of string slices of the names child modules inside a source code directory.

Notifications You must be signed in to change notification settings

maxfierrog/list-modules

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 

Repository files navigation

List-Modules Procedural Macro

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.

About

Rust procedural macro for generating a constant list of string slices of the names child modules inside a source code directory.

Topics

Resources

Stars

Watchers

Forks

Languages