1#ifndef __PERF_HELP_H
2#define __PERF_HELP_H
3
4struct cmdnames {
5	size_t alloc;
6	size_t cnt;
7	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);
22void add_cmdname(struct cmdnames *cmds, const char *name, size_t len);
23/* 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 /* __PERF_HELP_H */
30