Miklos Vajna | 940208a | 2008-07-30 01:16:58 +0200 | [diff] [blame] | 1 | #ifndef HELP_H |
| 2 | #define HELP_H |
| 3 | |
| 4 | struct cmdnames { |
| 5 | int alloc; |
| 6 | int cnt; |
| 7 | struct cmdname { |
Johannes Schindelin | 8af84da | 2008-08-31 15:50:23 +0200 | [diff] [blame] | 8 | size_t len; /* also used for similarity index in help.c */ |
Miklos Vajna | 940208a | 2008-07-30 01:16:58 +0200 | [diff] [blame] | 9 | char name[FLEX_ARRAY]; |
| 10 | } **names; |
| 11 | }; |
| 12 | |
Miklos Vajna | 3d78d1f | 2008-08-02 10:08:38 +0200 | [diff] [blame] | 13 | static inline void mput_char(char c, unsigned int num) |
| 14 | { |
| 15 | while(num--) |
| 16 | putchar(c); |
| 17 | } |
| 18 | |
Thiago Farina | fd5c363 | 2010-08-31 23:29:08 -0300 | [diff] [blame] | 19 | extern void list_common_cmds_help(void); |
| 20 | extern const char *help_unknown_cmd(const char *cmd); |
| 21 | extern void load_command_list(const char *prefix, |
| 22 | struct cmdnames *main_cmds, |
| 23 | struct cmdnames *other_cmds); |
| 24 | extern void add_cmdname(struct cmdnames *cmds, const char *name, int len); |
Miklos Vajna | 940208a | 2008-07-30 01:16:58 +0200 | [diff] [blame] | 25 | /* Here we require that excludes is a sorted list. */ |
Thiago Farina | fd5c363 | 2010-08-31 23:29:08 -0300 | [diff] [blame] | 26 | extern void exclude_cmds(struct cmdnames *cmds, struct cmdnames *excludes); |
| 27 | extern int is_in_cmdlist(struct cmdnames *cmds, const char *name); |
| 28 | extern void list_commands(const char *title, |
| 29 | struct cmdnames *main_cmds, |
| 30 | struct cmdnames *other_cmds); |
Miklos Vajna | 940208a | 2008-07-30 01:16:58 +0200 | [diff] [blame] | 31 | |
| 32 | #endif /* HELP_H */ |