mddd_std/runners/
helper.rs1use mddd_traits::{IRunner, IUseCase, IUseCaseRequest};
2
3pub(crate) fn make_leaf_help<R: IUseCaseRequest, UC: IUseCase>(prefix: &str, uc: &UC) -> String {
4 format!("{}: {}\nArgs:\n{}", prefix, uc.description(), R::help())
5}
6
7pub(crate) fn make_node_help(
8 prefix: &str,
9 description: &str,
10 children: &[(String, Box<dyn IRunner>)],
11) -> String {
12 let children_help = children
13 .iter()
14 .map(|(key, node)| format!(" {} - {}", key, node.short_description()))
15 .collect::<Vec<_>>()
16 .join("\n");
17 format!("{}: {}\nCommands:\n{}", prefix, description, children_help)
18}