Commit 16e04047 authored by Zachary T Welch's avatar Zachary T Welch
Browse files

demonstrate chaining with foo commands

Use the new command registration chaining capabilities to eliminate
the foo_register_commands helper, folding its remaining command
handler setup into the hello_command_handlers registration array.
parent e7fd1d3d
......@@ -75,16 +75,6 @@ static const struct command_registration foo_command_handlers[] = {
COMMAND_REGISTRATION_DONE
};
int foo_register_commands(struct command_context *cmd_ctx)
{
// register several commands under the foo command
struct command *cmd = COMMAND_REGISTER(cmd_ctx, NULL, "foo",
NULL, COMMAND_ANY, "example command handler skeleton");
return register_commands(cmd_ctx, cmd, foo_command_handlers);
}
static COMMAND_HELPER(handle_hello_args, const char **sep, const char **name)
{
if (CMD_ARGC > 1)
......@@ -119,12 +109,17 @@ static const struct command_registration hello_command_handlers[] = {
.help = "prints a warm welcome",
.usage = "[<name>]",
},
{
.name = "foo",
.mode = COMMAND_ANY,
.help = "example command handler skeleton",
.chain = foo_command_handlers,
},
COMMAND_REGISTRATION_DONE
};
int hello_register_commands(struct command_context *cmd_ctx)
{
foo_register_commands(cmd_ctx);
return register_commands(cmd_ctx, NULL, hello_command_handlers);
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment