1 /* Header file for GDB CLI command implementation library.
2 Copyright (C) 2000-2018 Free Software Foundation, Inc.
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 3 of the License, or
7 (at your option) any later version.
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with this program. If not, see <http://www.gnu.org/licenses/>. */
17 #if !defined (CLI_CMDS_H)
20 #include "common/filestuff.h"
21 #include "common/gdb_optional.h"
23 /* Chain containing all defined commands. */
25 extern struct cmd_list_element
*cmdlist
;
27 /* Chain containing all defined info subcommands. */
29 extern struct cmd_list_element
*infolist
;
31 /* Chain containing all defined enable subcommands. */
33 extern struct cmd_list_element
*enablelist
;
35 /* Chain containing all defined disable subcommands. */
37 extern struct cmd_list_element
*disablelist
;
39 /* Chain containing all defined delete subcommands. */
41 extern struct cmd_list_element
*deletelist
;
43 /* Chain containing all defined detach subcommands. */
45 extern struct cmd_list_element
*detachlist
;
47 /* Chain containing all defined kill subcommands. */
49 extern struct cmd_list_element
*killlist
;
51 /* Chain containing all defined stop subcommands. */
53 extern struct cmd_list_element
*stoplist
;
55 /* Chain containing all defined set subcommands */
57 extern struct cmd_list_element
*setlist
;
59 /* Chain containing all defined unset subcommands */
61 extern struct cmd_list_element
*unsetlist
;
63 /* Chain containing all defined show subcommands. */
65 extern struct cmd_list_element
*showlist
;
67 /* Chain containing all defined \"set history\". */
69 extern struct cmd_list_element
*sethistlist
;
71 /* Chain containing all defined \"show history\". */
73 extern struct cmd_list_element
*showhistlist
;
75 /* Chain containing all defined \"unset history\". */
77 extern struct cmd_list_element
*unsethistlist
;
79 /* Chain containing all defined maintenance subcommands. */
81 extern struct cmd_list_element
*maintenancelist
;
83 /* Chain containing all defined "maintenance info" subcommands. */
85 extern struct cmd_list_element
*maintenanceinfolist
;
87 /* Chain containing all defined "maintenance print" subcommands. */
89 extern struct cmd_list_element
*maintenanceprintlist
;
91 extern struct cmd_list_element
*setprintlist
;
93 extern struct cmd_list_element
*showprintlist
;
95 extern struct cmd_list_element
*setdebuglist
;
97 extern struct cmd_list_element
*showdebuglist
;
99 extern struct cmd_list_element
*setchecklist
;
101 extern struct cmd_list_element
*showchecklist
;
103 /* Exported to gdb/top.c */
105 void init_cmd_lists (void);
107 void init_cli_cmds (void);
109 int is_complete_command (struct cmd_list_element
*cmd
);
111 /* Exported to gdb/main.c */
113 extern void cd_command (const char *, int);
115 /* Exported to gdb/top.c and gdb/main.c */
117 extern void quit_command (const char *, int);
119 extern void source_script (const char *, int);
121 /* Exported to objfiles.c. */
123 /* The script that was opened. */
127 gdb::unique_xmalloc_ptr
<char> full_path
;
129 open_script (gdb_file_up
&&stream_
,
130 gdb::unique_xmalloc_ptr
<char> &&full_path_
)
131 : stream (std::move (stream_
)),
132 full_path (std::move (full_path_
))
137 extern gdb::optional
<open_script
>
138 find_and_open_script (const char *file
, int search_path
);
140 /* Command tracing state. */
142 extern int source_verbose
;
143 extern int trace_commands
;
145 #endif /* !defined (CLI_CMDS_H) */