Index: gdb/command.h |
diff --git a/gdb/command.h b/gdb/command.h |
index d32e98e5159a9bd6704678996a7c39c4c92707a9..3064ce29a8125f8893126f271a8e9cbd7a8b18ae 100644 |
--- a/gdb/command.h |
+++ b/gdb/command.h |
@@ -1,4 +1,4 @@ |
-/* Header file for command-reading library command.c. |
+/* Header file for command creation. |
Copyright (C) 1986, 1989-1995, 1999-2000, 2002, 2004, 2007-2012 Free |
Software Foundation, Inc. |
@@ -19,6 +19,11 @@ |
#if !defined (COMMAND_H) |
#define COMMAND_H 1 |
+#include "gdb_vecs.h" |
+ |
+/* This file defines the public interface for any code wanting to |
+ create commands. */ |
+ |
/* Command classes are top-level categories into which commands are |
broken down for "help" purposes. |
@@ -106,6 +111,8 @@ struct cmd_list_element; |
/* Forward-declarations of the entry-points of cli/cli-decode.c. */ |
+/* API to the manipulation of command lists. */ |
+ |
extern int valid_user_defined_cmd_name_p (const char *name); |
extern struct cmd_list_element *add_cmd (char *, enum command_class, |
@@ -144,9 +151,10 @@ typedef void cmd_sfunc_ftype (char *args, int from_tty, |
extern void set_cmd_sfunc (struct cmd_list_element *cmd, |
cmd_sfunc_ftype *sfunc); |
-extern void set_cmd_completer (struct cmd_list_element *, |
- char **(*completer) (struct cmd_list_element *, |
- char *, char *)); |
+typedef VEC (char_ptr) *completer_ftype (struct cmd_list_element *, |
+ char *, char *); |
+ |
+extern void set_cmd_completer (struct cmd_list_element *, completer_ftype *); |
/* HACK: cagney/2002-02-23: Code, mostly in tracepoints.c, grubs |
around in cmd objects to test the value of the commands sfunc(). */ |
@@ -168,6 +176,8 @@ extern void execute_cmd_post_hook (struct cmd_list_element *cmd); |
/* Return the type of the command. */ |
extern enum cmd_types cmd_type (struct cmd_list_element *cmd); |
+/* Flag for an ambiguous cmd_list result. */ |
+#define CMD_LIST_AMBIGUOUS ((struct cmd_list_element *) -1) |
extern struct cmd_list_element *lookup_cmd (char **, |
struct cmd_list_element *, char *, |
@@ -201,21 +211,17 @@ extern struct cmd_list_element *add_info (char *, |
extern struct cmd_list_element *add_info_alias (char *, char *, int); |
-extern char **complete_on_cmdlist (struct cmd_list_element *, |
- char *, char *); |
+extern VEC (char_ptr) *complete_on_cmdlist (struct cmd_list_element *, |
+ char *, char *); |
-extern char **complete_on_enum (const char *enumlist[], |
- char *, char *); |
+extern VEC (char_ptr) *complete_on_enum (const char *const *enumlist, |
+ char *, char *); |
-extern void help_cmd (char *, struct ui_file *); |
+/* Functions that implement commands about CLI commands. */ |
extern void help_list (struct cmd_list_element *, char *, |
enum command_class, struct ui_file *); |
-extern void help_cmd_list (struct cmd_list_element *, |
- enum command_class, |
- char *, int, struct ui_file *); |
- |
/* Method for show a set/show variable's VALUE on FILE. If this |
method isn't supplied deprecated_show_value_hack() is called (which |
is not good). */ |
@@ -229,7 +235,7 @@ extern show_value_ftype deprecated_show_value_hack; |
extern void add_setshow_enum_cmd (char *name, |
enum command_class class, |
- const char *enumlist[], |
+ const char *const *enumlist, |
const char **var, |
const char *set_doc, |
const char *show_doc, |