gdb/doc: make use of group/end group in 'info pretty-printers' example
[binutils-gdb.git] / gdb / gdbcmd.h
index 489b31cff04aece13549b9be630b84aeee165d76..a05c68e52c25e3682945263a8e66896b59eb198d 100644 (file)
@@ -1,9 +1,16 @@
+/* ***DEPRECATED***  The gdblib files must not be calling/using things in any
+   of the possible command languages.  If necessary, a hook (that may be
+   present or not) must be used and set to the appropriate routine by any
+   command language that cares about it.  If you are having to include this
+   file you are possibly doing things the old way.  This file will dissapear.
+   fnasser@redhat.com    */
+
 /* Header file for GDB-specific command-line stuff.
-   Copyright 1986, 1989, 1990, 1992, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1986-2022 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
    GNU General Public License for more details.
 
    You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 #if !defined (GDBCMD_H)
 #define GDBCMD_H 1
 
 #include "command.h"
-#ifdef UI_OUT
 #include "ui-out.h"
-#endif
-
-/* Chain containing all defined commands.  */
-
-extern struct cmd_list_element *cmdlist;
-
-/* Chain containing all defined info subcommands.  */
-
-extern struct cmd_list_element *infolist;
-
-/* Chain containing all defined enable subcommands. */
-
-extern struct cmd_list_element *enablelist;
-
-/* Chain containing all defined disable subcommands. */
-
-extern struct cmd_list_element *disablelist;
-
-/* Chain containing all defined delete subcommands. */
-
-extern struct cmd_list_element *deletelist;
-
-/* Chain containing all defined toggle subcommands. */
-
-extern struct cmd_list_element *togglelist;
-
-/* Chain containing all defined stop subcommands. */
-
-extern struct cmd_list_element *stoplist;
-
-/* Chain containing all defined "enable breakpoint" subcommands. */
-
-extern struct cmd_list_element *enablebreaklist;
-
-/* Chain containing all defined set subcommands */
+#include "cli/cli-script.h"
+#include "cli/cli-cmds.h"
 
-extern struct cmd_list_element *setlist;
+extern void execute_command (const char *, int);
 
-/* Chain containing all defined unset subcommands */
+/* Run FN.  Sends its output to FILE, do not display it to the screen.
+   The global BATCH_FLAG will be temporarily set to true.  */
 
-extern struct cmd_list_element *unsetlist;
+extern void execute_fn_to_ui_file (struct ui_file *file, std::function<void(void)> fn);
 
-/* Chain containing all defined show subcommands.  */
+/* Run FN.  Capture its output into the returned string, do not display it
+   to the screen.  The global BATCH_FLAG will temporarily be set to true.
+   When TERM_OUT is true the output is collected with terminal behaviour
+   (e.g. with styling).  When TERM_OUT is false raw output will be collected
+   (e.g. no styling).  */
 
-extern struct cmd_list_element *showlist;
+extern void execute_fn_to_string (std::string &res,
+                                 std::function<void(void)> fn, bool term_out);
 
-/* Chain containing all defined \"set history\".  */
+/* As execute_fn_to_ui_file, but run execute_command for P and FROM_TTY.  */
 
-extern struct cmd_list_element *sethistlist;
+extern void execute_command_to_ui_file (struct ui_file *file,
+                                       const char *p, int from_tty);
 
-/* Chain containing all defined \"show history\".  */
+/* As execute_fn_to_string, but run execute_command for P and FROM_TTY.  */
 
-extern struct cmd_list_element *showhistlist;
+extern void execute_command_to_string (std::string &res, const char *p,
+                                      int from_tty, bool term_out);
 
-/* Chain containing all defined \"unset history\".  */
+/* As execute_command_to_string, but ignore resulting string.  */
 
-extern struct cmd_list_element *unsethistlist;
-
-/* Chain containing all defined maintenance subcommands. */
-
-extern struct cmd_list_element *maintenancelist;
-
-/* Chain containing all defined "maintenance info" subcommands. */
-
-extern struct cmd_list_element *maintenanceinfolist;
-
-/* Chain containing all defined "maintenance print" subcommands. */
-
-extern struct cmd_list_element *maintenanceprintlist;
-
-extern struct cmd_list_element *setprintlist;
-
-extern struct cmd_list_element *showprintlist;
-
-extern struct cmd_list_element *setdebuglist;
-
-extern struct cmd_list_element *showdebuglist;
-
-extern struct cmd_list_element *setchecklist;
-
-extern struct cmd_list_element *showchecklist;
-
-extern void execute_user_command (struct cmd_list_element *, char *);
-
-extern void execute_command (char *, int);
-
-enum command_control_type execute_control_command (struct command_line *);
+extern void execute_command_to_string (const char *p,
+                                      int from_tty, bool term_out);
 
 extern void print_command_line (struct command_line *, unsigned int,
                                struct ui_file *);
-#ifdef UI_OUT
 extern void print_command_lines (struct ui_out *,
                                 struct command_line *, unsigned int);
-#endif
-
-extern char **noop_completer (char *, char *);
-
-extern char **filename_completer (char *, char *);
 
 #endif /* !defined (GDBCMD_H) */