add public API for locating commands
Allow other modules to find a command, primarily for the purpose of registering and unregistering subcommands.
This commit is contained in:
parent
4c54c27da7
commit
769fbfa058
|
@ -193,6 +193,16 @@ static struct command *command_find(struct command *head, const char *name)
|
||||||
}
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
struct command *command_find_in_context(struct command_context *cmd_ctx,
|
||||||
|
const char *name)
|
||||||
|
{
|
||||||
|
return command_find(cmd_ctx->commands, name);
|
||||||
|
}
|
||||||
|
struct command *command_find_in_parent(struct command *parent,
|
||||||
|
const char *name)
|
||||||
|
{
|
||||||
|
return command_find(parent->children, name);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add the command into the linked list, sorted by name.
|
* Add the command into the linked list, sorted by name.
|
||||||
|
|
|
@ -281,6 +281,11 @@ int unregister_command(struct command_context *cmd_ctx,
|
||||||
int unregister_all_commands(struct command_context *cmd_ctx,
|
int unregister_all_commands(struct command_context *cmd_ctx,
|
||||||
struct command *parent);
|
struct command *parent);
|
||||||
|
|
||||||
|
struct command *command_find_in_context(struct command_context *cmd_ctx,
|
||||||
|
const char *name);
|
||||||
|
struct command *command_find_in_parent(struct command *parent,
|
||||||
|
const char *name);
|
||||||
|
|
||||||
void command_set_output_handler(struct command_context* context,
|
void command_set_output_handler(struct command_context* context,
|
||||||
command_output_handler_t output_handler, void *priv);
|
command_output_handler_t output_handler, void *priv);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue