diff options
Diffstat (limited to 'gdb/command.h')
-rw-r--r-- | gdb/command.h | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/gdb/command.h b/gdb/command.h index 2a190d4..3a4a449 100644 --- a/gdb/command.h +++ b/gdb/command.h @@ -21,6 +21,8 @@ #include "gdb_vecs.h" #include "common/scoped_restore.h" +struct completion_tracker; + /* This file defines the public interface for any code wanting to create commands. */ @@ -174,7 +176,7 @@ typedef void cmd_sfunc_ftype (char *args, int from_tty, extern void set_cmd_sfunc (struct cmd_list_element *cmd, cmd_sfunc_ftype *sfunc); -/* A completion routine. Return a list of possible completions. +/* A completion routine. Add possible completions to tracker. TEXT is the text beyond what was matched for the command itself (leading whitespace is skipped). It stops where we are supposed to @@ -183,11 +185,13 @@ extern void set_cmd_sfunc (struct cmd_list_element *cmd, relative to this position. For example, suppose TEXT is "foo" and we want to complete to "foobar". If WORD is "oo", return "oobar"; if WORD is "baz/foo", return "baz/foobar". */ -typedef VEC (char_ptr) *completer_ftype (struct cmd_list_element *, - const char *text, const char *word); +typedef void completer_ftype (struct cmd_list_element *, + completion_tracker &tracker, + const char *text, const char *word); /* Same, but for set_cmd_completer_handle_brkchars. */ typedef void completer_handle_brkchars_ftype (struct cmd_list_element *, + completion_tracker &tracker, const char *text, const char *word); extern void set_cmd_completer (struct cmd_list_element *, completer_ftype *); @@ -259,11 +263,13 @@ extern struct cmd_list_element *add_info (const char *, extern struct cmd_list_element *add_info_alias (const char *, const char *, int); -extern VEC (char_ptr) *complete_on_cmdlist (struct cmd_list_element *, - const char *, const char *, int); +extern void complete_on_cmdlist (struct cmd_list_element *, + completion_tracker &tracker, + const char *, const char *, int); -extern VEC (char_ptr) *complete_on_enum (const char *const *enumlist, - const char *, const char *); +extern void complete_on_enum (completion_tracker &tracker, + const char *const *enumlist, + const char *, const char *); /* Functions that implement commands about CLI commands. */ |