mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-01-22 07:53:36 +08:00
* command.h (add_setshow_cmd): Declare.
(add_setshow_cmd_full): Declare. * cli/cli-decode.c (add_setshow_cmd): No longer static. Now returns void. Use add_setshow_cmd_full. (add_setshow_cmd_full): New function. (add_setshow_auto_boolean_cmd): Use add_setshow_cmd_full. (add_setshow_boolean_cmd): Likewise.
This commit is contained in:
parent
7655ea9277
commit
9f064c9519
@ -1,3 +1,13 @@
|
||||
2002-06-26 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* command.h (add_setshow_cmd): Declare.
|
||||
(add_setshow_cmd_full): Declare.
|
||||
* cli/cli-decode.c (add_setshow_cmd): No longer static. Now
|
||||
returns void. Use add_setshow_cmd_full.
|
||||
(add_setshow_cmd_full): New function.
|
||||
(add_setshow_auto_boolean_cmd): Use add_setshow_cmd_full.
|
||||
(add_setshow_boolean_cmd): Likewise.
|
||||
|
||||
2002-06-26 Jason Thorpe <thorpej@wasabisystems.com>
|
||||
|
||||
* config/vax/tm-vax.h: Protect from multiple inclusion.
|
||||
|
@ -329,16 +329,20 @@ add_set_or_show_cmd (char *name,
|
||||
CLASS is as in add_cmd. VAR_TYPE is the kind of thing we are
|
||||
setting. VAR is address of the variable being controlled by this
|
||||
command. SET_FUNC and SHOW_FUNC are the callback functions (if
|
||||
non-NULL). SET_DOC and SHOW_DOC are the documentation strings. */
|
||||
non-NULL). SET_DOC and SHOW_DOC are the documentation strings.
|
||||
SET_RESULT and SHOW_RESULT, if not NULL, are set to the resulting
|
||||
command structures. */
|
||||
|
||||
static struct cmd_list_element *
|
||||
add_setshow_cmd (char *name,
|
||||
enum command_class class,
|
||||
var_types var_type, void *var,
|
||||
char *set_doc, char *show_doc,
|
||||
cmd_sfunc_ftype *set_func, cmd_sfunc_ftype *show_func,
|
||||
struct cmd_list_element **set_list,
|
||||
struct cmd_list_element **show_list)
|
||||
void
|
||||
add_setshow_cmd_full (char *name,
|
||||
enum command_class class,
|
||||
var_types var_type, void *var,
|
||||
char *set_doc, char *show_doc,
|
||||
cmd_sfunc_ftype *set_func, cmd_sfunc_ftype *show_func,
|
||||
struct cmd_list_element **set_list,
|
||||
struct cmd_list_element **show_list,
|
||||
struct cmd_list_element **set_result,
|
||||
struct cmd_list_element **show_result)
|
||||
{
|
||||
struct cmd_list_element *set;
|
||||
struct cmd_list_element *show;
|
||||
@ -350,9 +354,31 @@ add_setshow_cmd (char *name,
|
||||
show_doc, show_list);
|
||||
if (show_func != NULL)
|
||||
set_cmd_sfunc (show, show_func);
|
||||
/* The caller often wants to modify set to include info like an
|
||||
enumeration. */
|
||||
return set;
|
||||
|
||||
if (set_result != NULL)
|
||||
*set_result = set;
|
||||
if (show_result != NULL)
|
||||
*show_result = show;
|
||||
}
|
||||
|
||||
/* Add element named NAME to both the command SET_LIST and SHOW_LIST.
|
||||
CLASS is as in add_cmd. VAR_TYPE is the kind of thing we are
|
||||
setting. VAR is address of the variable being controlled by this
|
||||
command. SET_FUNC and SHOW_FUNC are the callback functions (if
|
||||
non-NULL). SET_DOC and SHOW_DOC are the documentation strings. */
|
||||
|
||||
void
|
||||
add_setshow_cmd (char *name,
|
||||
enum command_class class,
|
||||
var_types var_type, void *var,
|
||||
char *set_doc, char *show_doc,
|
||||
cmd_sfunc_ftype *set_func, cmd_sfunc_ftype *show_func,
|
||||
struct cmd_list_element **set_list,
|
||||
struct cmd_list_element **show_list)
|
||||
{
|
||||
add_setshow_cmd_full (name, class, var_type, var, set_doc, show_doc,
|
||||
set_func, show_func, set_list, show_list,
|
||||
NULL, NULL);
|
||||
}
|
||||
|
||||
struct cmd_list_element *
|
||||
@ -405,9 +431,10 @@ add_setshow_auto_boolean_cmd (char *name,
|
||||
{
|
||||
static const char *auto_boolean_enums[] = { "on", "off", "auto", NULL };
|
||||
struct cmd_list_element *c;
|
||||
c = add_setshow_cmd (name, class, var_auto_boolean, var,
|
||||
set_doc, show_doc, set_func, show_func,
|
||||
set_list, show_list);
|
||||
add_setshow_cmd_full (name, class, var_auto_boolean, var,
|
||||
set_doc, show_doc, set_func, show_func,
|
||||
set_list, show_list,
|
||||
&c, NULL);
|
||||
c->enums = auto_boolean_enums;
|
||||
}
|
||||
|
||||
@ -426,10 +453,11 @@ add_setshow_boolean_cmd (char *name,
|
||||
{
|
||||
static const char *boolean_enums[] = { "on", "off", NULL };
|
||||
struct cmd_list_element *c;
|
||||
c = add_setshow_cmd (name, class, var_boolean, var,
|
||||
set_doc, show_doc,
|
||||
set_func, show_func,
|
||||
set_list, show_list);
|
||||
add_setshow_cmd_full (name, class, var_boolean, var,
|
||||
set_doc, show_doc,
|
||||
set_func, show_func,
|
||||
set_list, show_list,
|
||||
&c, NULL);
|
||||
c->enums = boolean_enums;
|
||||
}
|
||||
|
||||
|
@ -210,6 +210,26 @@ 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 void add_setshow_cmd (char *name,
|
||||
enum command_class class,
|
||||
var_types var_type, void *var,
|
||||
char *set_doc, char *show_doc,
|
||||
cmd_sfunc_ftype *set_func,
|
||||
cmd_sfunc_ftype *show_func,
|
||||
struct cmd_list_element **set_list,
|
||||
struct cmd_list_element **show_list);
|
||||
|
||||
extern void add_setshow_cmd_full (char *name,
|
||||
enum command_class class,
|
||||
var_types var_type, void *var,
|
||||
char *set_doc, char *show_doc,
|
||||
cmd_sfunc_ftype *set_func,
|
||||
cmd_sfunc_ftype *show_func,
|
||||
struct cmd_list_element **set_list,
|
||||
struct cmd_list_element **show_list,
|
||||
struct cmd_list_element **set_result,
|
||||
struct cmd_list_element **show_result);
|
||||
|
||||
extern struct cmd_list_element *add_set_cmd (char *name, enum
|
||||
command_class class,
|
||||
var_types var_type, void *var,
|
||||
|
Loading…
Reference in New Issue
Block a user