*** empty log message ***
[deliverable/binutils-gdb.git] / gdb / command.h
index 01eb0de9eb9071234f0cef97d8f5e0621f169ab8..9bc01e7decd7d045f364d76463533d045d7a43c7 100644 (file)
@@ -80,8 +80,11 @@ typedef enum var_types
     /* String which stores what the user types verbatim.
        *VAR is a malloc'd string, or NULL if the string is empty.  */
     var_string_noescape,
-    /* String which stores a filename.
-       *VAR is a malloc'd string, or NULL if the string is empty.  */
+    /* String which stores a filename.  (*VAR) is a malloc'd string,
+       or "" if the string was empty.  */
+    var_optional_filename,
+    /* String which stores a filename.  (*VAR) is a malloc'd
+       string.  */
     var_filename,
     /* ZeroableInteger.  *VAR is an int.  Like Unsigned Integer except
        that zero really means zero.  */
@@ -153,15 +156,6 @@ extern void execute_cmd_pre_hook (struct cmd_list_element *cmd);
 extern void execute_cmd_post_hook (struct cmd_list_element *cmd);
 
 /* Return the type of the command.  */
-/* NOTE: cagney/2002-03-17: The deprecated_add_show_from_set()
-   function clones the set command passed as a parameter.  The clone
-   operation will include (BUG?) any ``set'' command callback, if
-   present.  Commands like ``info set'' call all the ``show'' command
-   callbacks.  Unfortunately, for ``show'' commands cloned from
-   ``set'', this includes callbacks belonging to ``set'' commands.
-   Making this worse, this only occures if
-   deprecated_add_show_from_set() is called after add_cmd_sfunc()
-   (BUG?).  */
 extern enum cmd_types cmd_type (struct cmd_list_element *cmd);
 
 
@@ -211,18 +205,15 @@ extern void help_list (struct cmd_list_element *, char *,
 extern void help_cmd_list (struct cmd_list_element *, enum command_class,
                           char *, int, struct ui_file *);
 
-extern struct cmd_list_element *add_set_cmd (char *name, enum
-                                            command_class class,
-                                            var_types var_type, void *var,
-                                            char *doc,
-                                            struct cmd_list_element **list);
-
-extern struct cmd_list_element *add_set_enum_cmd (char *name,
-                                                 enum command_class class,
-                                                 const char *enumlist[],
-                                                 const char **var,
-                                                 char *doc,
-                                                 struct cmd_list_element **list);
+/* NOTE: cagney/2005-02-21: Since every set command should be paired
+   with a corresponding show command (i.e., add_setshow_*) this call
+   should not be needed.  Unfortunatly some are not (e.g.,
+   "maintenance <variable> <value>") and those need to be fixed.  */
+extern struct cmd_list_element *deprecated_add_set_cmd (char *name, enum
+                                                       command_class class,
+                                                       var_types var_type, void *var,
+                                                       char *doc,
+                                                       struct cmd_list_element **list);
 
 /* Method for show a set/show variable's VALUE on FILE.  If this
    method isn't supplied deprecated_show_value_hack() is called (which
@@ -301,6 +292,28 @@ extern void add_setshow_string_noescape_cmd (char *name,
                                             struct cmd_list_element **set_list,
                                             struct cmd_list_element **show_list);
 
+extern void add_setshow_optional_filename_cmd (char *name,
+                                              enum command_class class,
+                                              char **var,
+                                              const char *set_doc,
+                                              const char *show_doc,
+                                              const char *help_doc,
+                                              cmd_sfunc_ftype *set_func,
+                                              show_value_ftype *show_func,
+                                              struct cmd_list_element **set_list,
+                                              struct cmd_list_element **show_list);
+
+extern void add_setshow_integer_cmd (char *name,
+                                    enum command_class class,
+                                    int *var,
+                                    const char *set_doc,
+                                    const char *show_doc,
+                                    const char *help_doc,
+                                    cmd_sfunc_ftype *set_func,
+                                    show_value_ftype *show_func,
+                                    struct cmd_list_element **set_list,
+                                    struct cmd_list_element **show_list);
+
 extern void add_setshow_uinteger_cmd (char *name,
                                      enum command_class class,
                                      unsigned int *var,
@@ -323,9 +336,6 @@ extern void add_setshow_zinteger_cmd (char *name,
                                      struct cmd_list_element **set_list,
                                      struct cmd_list_element **show_list);
 
-extern struct cmd_list_element *deprecated_add_show_from_set (struct cmd_list_element *,
-                                                             struct cmd_list_element **);
-
 /* Do a "show" command for each thing on a command list.  */
 
 extern void cmd_show_list (struct cmd_list_element *, int, char *);
This page took 0.024771 seconds and 4 git commands to generate.