Code

builtin-help: make some internal functions available to other builtins
[git.git] / help.h
diff --git a/help.h b/help.h
new file mode 100644 (file)
index 0000000..d614e54
--- /dev/null
+++ b/help.h
@@ -0,0 +1,23 @@
+#ifndef HELP_H
+#define HELP_H
+
+struct cmdnames {
+       int alloc;
+       int cnt;
+       struct cmdname {
+               size_t len;
+               char name[FLEX_ARRAY];
+       } **names;
+};
+
+unsigned int load_command_list(const char *prefix,
+               struct cmdnames *main_cmds,
+               struct cmdnames *other_cmds);
+void add_cmdname(struct cmdnames *cmds, const char *name, int len);
+/* Here we require that excludes is a sorted list. */
+void exclude_cmds(struct cmdnames *cmds, struct cmdnames *excludes);
+int is_in_cmdlist(struct cmdnames *c, const char *s);
+void list_commands(const char *title, unsigned int longest,
+               struct cmdnames *main_cmds, struct cmdnames *other_cmds);
+
+#endif /* HELP_H */