]>
Commit | Line | Data |
---|---|---|
d318976c | 1 | /* Header file for GDB CLI set and show commands implementation. |
1d506c26 | 2 | Copyright (C) 2000-2024 Free Software Foundation, Inc. |
d318976c FN |
3 | |
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 | |
a9762ec7 | 6 | the Free Software Foundation; either version 3 of the License, or |
d318976c FN |
7 | (at your option) any later version. |
8 | ||
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. | |
13 | ||
14 | You should have received a copy of the GNU General Public License | |
a9762ec7 | 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
d318976c | 16 | |
1a5c2598 TT |
17 | #ifndef CLI_CLI_SETSHOW_H |
18 | #define CLI_CLI_SETSHOW_H | |
d318976c | 19 | |
fdbc9870 PA |
20 | #include <string> |
21 | ||
da3331ec AC |
22 | struct cmd_list_element; |
23 | ||
bd712aed DE |
24 | /* Parse ARG, an option to a boolean variable. |
25 | Returns 1 for true, 0 for false, and -1 if invalid. */ | |
5bc98e52 | 26 | extern int parse_cli_boolean_value (const char *arg); |
d318976c | 27 | |
9d0faba9 PA |
28 | /* Same as above, but work with a pointer to pointer. ARG is advanced |
29 | past a successfully parsed value. */ | |
30 | extern int parse_cli_boolean_value (const char **arg); | |
31 | ||
7aeb03e2 MR |
32 | /* Parse ARG, an option to a var_uinteger, var_integer or var_pinteger |
33 | variable. Return the parsed value on success or throw an error. If | |
34 | EXTRA_LITERALS is non-null, then interpret those literals accordingly. | |
35 | If EXPRESSION is true, *ARG is parsed as an expression; otherwise, | |
36 | it is parsed with get_ulongest. It's not possible to parse the | |
9d0faba9 PA |
37 | integer as an expression when there may be valid input after the |
38 | integer, such as when parsing command options. E.g., "print | |
39 | -elements NUMBER -obj --". In such case, parsing as an expression | |
40 | would parse "-obj --" as part of the expression as well. */ | |
7aeb03e2 MR |
41 | extern LONGEST parse_cli_var_integer (var_types var_type, |
42 | const literal_def *extra_literals, | |
43 | const char **arg, | |
44 | bool expression); | |
9d0faba9 PA |
45 | |
46 | /* Parse ARG, an option to a var_enum variable. ENUM is a | |
47 | null-terminated array of possible values. Either returns the parsed | |
48 | value on success or throws an error. ARG is advanced past the | |
49 | parsed value. */ | |
50 | const char *parse_cli_var_enum (const char **args, | |
51 | const char *const *enums); | |
52 | ||
06900326 | 53 | extern void do_set_command (const char *arg, int from_tty, |
5b9afe8a | 54 | struct cmd_list_element *c); |
06900326 | 55 | extern void do_show_command (const char *arg, int from_tty, |
5b9afe8a | 56 | struct cmd_list_element *c); |
d318976c | 57 | |
1d7fe7f0 LS |
58 | /* Get a string version of VAR's value. */ |
59 | extern std::string get_setshow_command_value_string (const setting &var); | |
fdbc9870 | 60 | |
7aa1b46f | 61 | extern void cmd_show_list (struct cmd_list_element *list, int from_tty); |
d318976c | 62 | |
1a5c2598 | 63 | #endif /* CLI_CLI_SETSHOW_H */ |