blob: 7128783637b4a7be720c49a9e74ccb43cba2cac9 [file] [log] [blame]
Ingo Molnar07800602009-04-20 15:00:56 +02001#ifndef HELP_H
2#define HELP_H
3
4struct cmdnames {
Ingo Molnarf37a2912009-07-01 12:37:06 +02005 size_t alloc;
6 size_t cnt;
Ingo Molnar07800602009-04-20 15:00:56 +02007 struct cmdname {
8 size_t len; /* also used for similarity index in help.c */
9 char name[FLEX_ARRAY];
10 } **names;
11};
12
13static inline void mput_char(char c, unsigned int num)
14{
15 while(num--)
16 putchar(c);
17}
18
19void load_command_list(const char *prefix,
20 struct cmdnames *main_cmds,
21 struct cmdnames *other_cmds);
Ingo Molnarf37a2912009-07-01 12:37:06 +020022void add_cmdname(struct cmdnames *cmds, const char *name, size_t len);
Ingo Molnar07800602009-04-20 15:00:56 +020023/* Here we require that excludes is a sorted list. */
24void exclude_cmds(struct cmdnames *cmds, struct cmdnames *excludes);
25int is_in_cmdlist(struct cmdnames *c, const char *s);
26void list_commands(const char *title, struct cmdnames *main_cmds,
27 struct cmdnames *other_cmds);
28
29#endif /* HELP_H */