Build a command hierarchy with Menus
masterThe CLI is structured as a tree of Menu objects. You must provide at least one root menu to initialize the Cli instance. You can create a hierarchy by nesting menus using the Menu::Insert method, which takes ownership of the child menu via std::move.
To create a CLI, initialize a Menu and pass it to the Cli constructor.
// create a menu (this is the root menu of our cli)
auto rootMenu = make_unique<Menu>("myprompt");
// ... fills rootMenu with commands or sub-menus
// create the cli with the root menu
Cli cli(std::move(rootMenu));