module添加方式
Ns2Kracy opened this issue · comments
能否为Module添加一种父子模块的注册方式
比如一个父模块如下
lazy_static! {
static ref MODULES: Arc<Vec<Module>> = Arc::new(vec![]);
}
pub fn all_module() -> Arc<Vec<Module>> {
MODULES.clone()
}
在modules的目录下有一个子目录的模块
lazy_static! {
static ref OSU_MODULES: Arc<Vec<Module>> = Arc::new(vec![]);
}
pub fn osu_module() -> Arc<Vec<Module>> {
OSU_MODULES.clone()
}
能否添加一种方法(比如迭代器)将子模块与父模块进行合并, 比如
pub fn all_module() -> Arc<Vec<Module>> {
let mut modules = MODULES.clone();
modules.extend(osu::osu_module().clone().into_iter());
modules
}
Template只是一个demo,您可以复制template作为独立的仓库,然后修改一下依赖版本。
您可以自行实现递归操作。
用 Mut vec 应该可以
OK, 感谢回答!