blob: b6b12d5754888438085bb4e574b034951ffec473 [file] [log] [blame]
Miklos Vajna940208a2008-07-30 01:16:58 +02001#ifndef HELP_H
2#define HELP_H
3
4struct cmdnames {
5 int alloc;
6 int cnt;
7 struct cmdname {
Johannes Schindelin8af84da2008-08-31 15:50:23 +02008 size_t len; /* also used for similarity index in help.c */
Miklos Vajna940208a2008-07-30 01:16:58 +02009 char name[FLEX_ARRAY];
10 } **names;
11};
12
Miklos Vajna3d78d1f2008-08-02 10:08:38 +020013static inline void mput_char(char c, unsigned int num)
14{
15 while(num--)
16 putchar(c);
17}
18
Thiago Farinafd5c3632010-08-31 23:29:08 -030019extern void list_common_cmds_help(void);
20extern const char *help_unknown_cmd(const char *cmd);
21extern void load_command_list(const char *prefix,
22 struct cmdnames *main_cmds,
23 struct cmdnames *other_cmds);
24extern void add_cmdname(struct cmdnames *cmds, const char *name, int len);
Miklos Vajna940208a2008-07-30 01:16:58 +020025/* Here we require that excludes is a sorted list. */
Thiago Farinafd5c3632010-08-31 23:29:08 -030026extern void exclude_cmds(struct cmdnames *cmds, struct cmdnames *excludes);
27extern int is_in_cmdlist(struct cmdnames *cmds, const char *name);
28extern void list_commands(const char *title,
29 struct cmdnames *main_cmds,
30 struct cmdnames *other_cmds);
Miklos Vajna940208a2008-07-30 01:16:58 +020031
32#endif /* HELP_H */