gdb: rename cmd_list_element::cmd_pointer to target
authorSimon Marchi <simon.marchi@polymtl.ca>
Mon, 17 May 2021 18:01:14 +0000 (14:01 -0400)
committerSimon Marchi <simon.marchi@polymtl.ca>
Mon, 17 May 2021 18:01:14 +0000 (14:01 -0400)
cmd_pointer is another field whose name I found really not clear.  Yes,
it's a pointer to a command, the type tells me that.  But what's the
relationship of that command to the current command?  This field
contains, for an alias, the command that it aliases.  So I think that
the name "alias_target" would be more appropriate.

Also, rename "old" parameters to "target" in the functions that add
aliases.

gdb/ChangeLog:

* cli/cli-decode.h (cmd_list_element) <cmd_pointer>: Rename
to...
<alias_target>: ... this.
(add_alias_cmd): Rename old to target.
(add_info_alias): Rename old_name to target_name.
(add_com_alias): Likewise.

Change-Id: I8db36c6dd799fae155f7acd3805f6d62d98befa9

gdb/ChangeLog
gdb/cli/cli-decode.c
gdb/cli/cli-decode.h
gdb/cli/cli-setshow.c
gdb/unittests/command-def-selftests.c

index 4184c9f1ff82deb0c259e4fed872fe9570febbd3..e430506373323f3602de25be9cb522d4961fc9c8 100644 (file)
@@ -1,3 +1,12 @@
+2021-05-17  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * cli/cli-decode.h (cmd_list_element) <cmd_pointer>: Rename
+       to...
+       <alias_target>: ... this.
+       (add_alias_cmd): Rename old to target.
+       (add_info_alias): Rename old_name to target_name.
+       (add_com_alias): Likewise.
+
 2021-05-17  Simon Marchi  <simon.marchi@polymtl.ca>
 
        * Rename "prefixlist" parameters to "subcommands" throughout.
index 27bd311e89c1a3a198cb3d09c4c33f8e03f354da..ec579ff196175f86ec3dfd58d5896a044629ee41 100644 (file)
@@ -75,7 +75,7 @@ lookup_cmd_with_subcommands (cmd_list_element **subcommands,
        {
          /* If we found an alias, we must return the aliased
             command.  */
-         return p->cmd_pointer ? p->cmd_pointer : p;
+         return p->alias_target ? p->alias_target : p;
        }
 
       q = lookup_cmd_with_subcommands (subcommands, *(p->subcommands));
@@ -208,7 +208,7 @@ do_add_cmd (const char *name, enum command_class theclass,
   c->aliases = delete_cmd (name, list, &c->hook_pre, &c->hookee_pre,
                           &c->hook_post, &c->hookee_post);
   for (iter = c->aliases; iter; iter = iter->alias_chain)
-    iter->cmd_pointer = c;
+    iter->alias_target = c;
   if (c->hook_pre)
     c->hook_pre->hookee_pre = c;
   if (c->hookee_pre)
@@ -305,45 +305,42 @@ deprecate_cmd (struct cmd_list_element *cmd, const char *replacement)
 }
 
 struct cmd_list_element *
-add_alias_cmd (const char *name, cmd_list_element *old,
+add_alias_cmd (const char *name, cmd_list_element *target,
               enum command_class theclass, int abbrev_flag,
               struct cmd_list_element **list)
 {
-  gdb_assert (old != nullptr);
+  gdb_assert (target != nullptr);
 
-  struct cmd_list_element *c = add_cmd (name, theclass, old->doc, list);
+  struct cmd_list_element *c = add_cmd (name, theclass, target->doc, list);
 
-  /* If OLD->DOC can be freed, we should make another copy.  */
-  if (old->doc_allocated)
+  /* If TARGET->DOC can be freed, we should make another copy.  */
+  if (target->doc_allocated)
     {
-      c->doc = xstrdup (old->doc);
+      c->doc = xstrdup (target->doc);
       c->doc_allocated = 1;
     }
   /* NOTE: Both FUNC and all the FUNCTIONs need to be copied.  */
-  c->func = old->func;
-  c->function = old->function;
-  c->subcommands = old->subcommands;
-  c->allow_unknown = old->allow_unknown;
+  c->func = target->func;
+  c->function = target->function;
+  c->subcommands = target->subcommands;
+  c->allow_unknown = target->allow_unknown;
   c->abbrev_flag = abbrev_flag;
-  c->cmd_pointer = old;
-  c->alias_chain = old->aliases;
-  old->aliases = c;
+  c->alias_target = target;
+  c->alias_chain = target->aliases;
+  target->aliases = c;
 
   return c;
 }
 
 struct cmd_list_element *
-add_alias_cmd (const char *name, const char *oldname,
+add_alias_cmd (const char *name, const char *target_name,
               enum command_class theclass, int abbrev_flag,
               struct cmd_list_element **list)
 {
-  const char *tmp;
-  struct cmd_list_element *old;
+  const char *tmp = target_name;
+  cmd_list_element *target = lookup_cmd (&tmp, *list, "", NULL, 1, 1);
 
-  tmp = oldname;
-  old = lookup_cmd (&tmp, *list, "", NULL, 1, 1);
-
-  return add_alias_cmd (name, old, theclass, abbrev_flag, list);
+  return add_alias_cmd (name, target, theclass, abbrev_flag, list);
 }
 
 
@@ -408,8 +405,8 @@ static void
 do_prefix_cmd (const char *args, int from_tty, struct cmd_list_element *c)
 {
   /* Look past all aliases.  */
-  while (c->cmd_pointer != nullptr)
-    c = c->cmd_pointer;
+  while (c->alias_target != nullptr)
+    c = c->alias_target;
 
   help_list (*c->subcommands, c->prefixname ().c_str (),
             all_commands, gdb_stdout);
@@ -951,9 +948,9 @@ delete_cmd (const char *name, struct cmd_list_element **list,
 
          /* If this command was an alias, remove it from the list of
             aliases.  */
-         if (iter->cmd_pointer)
+         if (iter->alias_target)
            {
-             struct cmd_list_element **prevp = &iter->cmd_pointer->aliases;
+             struct cmd_list_element **prevp = &iter->alias_target->aliases;
              struct cmd_list_element *a = *prevp;
 
              while (a != iter)
@@ -989,9 +986,9 @@ add_info (const char *name, cmd_const_cfunc_ftype *fun, const char *doc)
 /* Add an alias to the list of info subcommands.  */
 
 struct cmd_list_element *
-add_info_alias (const char *name, const char *oldname, int abbrev_flag)
+add_info_alias (const char *name, const char *target_name, int abbrev_flag)
 {
-  return add_alias_cmd (name, oldname, class_run, abbrev_flag, &infolist);
+  return add_alias_cmd (name, target_name, class_run, abbrev_flag, &infolist);
 }
 
 /* Add an element to the list of commands.  */
@@ -1010,10 +1007,10 @@ add_com (const char *name, enum command_class theclass,
    user defined aliases.  */
 
 struct cmd_list_element *
-add_com_alias (const char *name, const char *oldname, enum command_class theclass,
-              int abbrev_flag)
+add_com_alias (const char *name, const char *target_name,
+              command_class theclass, int abbrev_flag)
 {
-  return add_alias_cmd (name, oldname, theclass, abbrev_flag, &cmdlist);
+  return add_alias_cmd (name, target_name, theclass, abbrev_flag, &cmdlist);
 }
 
 /* Add an element with a suppress notification to the list of commands.  */
@@ -1046,11 +1043,11 @@ static void
 fput_alias_definition_styled (struct cmd_list_element *c,
                              struct ui_file *stream)
 {
-  gdb_assert (c->cmd_pointer != nullptr);
+  gdb_assert (c->alias_target != nullptr);
   fputs_filtered ("  alias ", stream);
   fput_command_name_styled (c, stream);
   fprintf_filtered (stream, " = ");
-  fput_command_name_styled (c->cmd_pointer, stream);
+  fput_command_name_styled (c->alias_target, stream);
   fprintf_filtered (stream, " %s\n", c->default_args.c_str ());
 }
 
@@ -1149,7 +1146,7 @@ apropos_cmd (struct ui_file *stream,
   /* Walk through the commands.  */
   for (c=commandlist;c;c=c->next)
     {
-      if (c->cmd_pointer != nullptr)
+      if (c->alias_target != nullptr)
        {
          /* Command aliases/abbreviations are skipped to ensure we print the
             doc of a command only once, when encountering the aliased
@@ -1490,7 +1487,7 @@ help_cmd_list (struct cmd_list_element *list, enum command_class theclass,
          continue;
        }
 
-      if (c->cmd_pointer != nullptr && theclass != class_alias)
+      if (c->alias_target != nullptr && theclass != class_alias)
        {
          /* Do not show an alias, unless specifically showing the
             list of aliases:  for all other classes, an alias is
@@ -1512,7 +1509,7 @@ help_cmd_list (struct cmd_list_element *list, enum command_class theclass,
             list of sub-commands of the aliased command.  */
          print_help_for_command
            (c,
-            recurse && (theclass != class_alias || c->cmd_pointer == nullptr),
+            recurse && (theclass != class_alias || c->alias_target == nullptr),
             stream);
          continue;
        }
@@ -1675,7 +1672,7 @@ lookup_cmd_1 (const char **text, struct cmd_list_element *clist,
 
   *text += len;
 
-  if (found->cmd_pointer)
+  if (found->alias_target)
     {
       /* We drop the alias (abbreviation) in favor of the command it
        is pointing to.  If the alias is deprecated, though, we need to
@@ -1692,7 +1689,7 @@ lookup_cmd_1 (const char **text, struct cmd_list_element *clist,
         of the command it is pointing to.  */
       if (default_args != nullptr)
        *default_args = found->default_args;
-      found = found->cmd_pointer;
+      found = found->alias_target;
       found_alias = true;
     }
   /* If we found a prefix command, keep looking.  */
@@ -2047,12 +2044,12 @@ lookup_cmd_composition_1 (const char *text,
        return 0;
       else
        {
-         if ((*cmd)->cmd_pointer)
+         if ((*cmd)->alias_target)
            {
              /* If the command was actually an alias, we note that an
                 alias was used (by assigning *ALIAS) and we set *CMD.  */
              *alias = *cmd;
-             *cmd = (*cmd)->cmd_pointer;
+             *cmd = (*cmd)->alias_target;
            }
        }
 
index e2428bdddf7de1828b66ade1737dc2dfa13a54d3..68a9b8586b4019f71c6b424b8ebab5cf200f5378 100644 (file)
@@ -229,7 +229,7 @@ struct cmd_list_element
 
   /* Pointer to command that is aliased by this one, so the
      aliased command can be located in case it has been hooked.  */
-  struct cmd_list_element *cmd_pointer = nullptr;
+  struct cmd_list_element *alias_target = nullptr;
 
   /* Start of a linked list of all aliases of this command.  */
   struct cmd_list_element *aliases = nullptr;
index cb72c6241cbf8f857ed1e9843d833c742ad5c3be..cb821c5b3c03fddf1c0ed05566a69a62630058ae 100644 (file)
@@ -740,7 +740,7 @@ cmd_show_list (struct cmd_list_element *list, int from_tty)
 
       /* If we find a prefix, run its list, prefixing our output by its
         prefix (with "show " skipped).  */
-      if (list->subcommands && list->cmd_pointer == nullptr)
+      if (list->subcommands && list->alias_target == nullptr)
        {
          ui_out_emit_tuple optionlist_emitter (uiout, "optionlist");
          std::string prefixname = list->prefixname ();
@@ -750,7 +750,7 @@ cmd_show_list (struct cmd_list_element *list, int from_tty)
            uiout->field_string ("prefix", new_prefix);
          cmd_show_list (*list->subcommands, from_tty);
        }
-      else if (list->theclass != no_set_class && list->cmd_pointer == nullptr)
+      else if (list->theclass != no_set_class && list->alias_target == nullptr)
        {
          ui_out_emit_tuple option_emitter (uiout, "option");
 
index 53e5626f64598de2764387e996da6d1d8f5ff5a9..123667d33699a0d95d401529f9577c783b0f9422 100644 (file)
@@ -155,7 +155,7 @@ traverse_command_structure (struct cmd_list_element **list,
     {
       /* If this command has subcommands and is not an alias,
         traverse the subcommands.  */
-      if (c->subcommands != NULL && c->cmd_pointer == nullptr)
+      if (c->subcommands != NULL && c->alias_target == nullptr)
        {
          /* Recursively call ourselves on the subcommand list,
             passing the right prefix in.  */