diff options
author | Pedro Alves <palves@redhat.com> | 2017-07-17 12:05:03 +0100 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2017-07-17 12:05:03 +0100 |
commit | 6e1dbf8cda1c66256179d0b15c96bc97ea5cf7b3 (patch) | |
tree | 1ce35dd58e6d3a3e884467426d24b62a0b532870 /gdb/command.h | |
parent | 78b13106edcd14d87b4cc0b7f8dce8db8c2be489 (diff) | |
download | gdb-6e1dbf8cda1c66256179d0b15c96bc97ea5cf7b3.zip gdb-6e1dbf8cda1c66256179d0b15c96bc97ea5cf7b3.tar.gz gdb-6e1dbf8cda1c66256179d0b15c96bc97ea5cf7b3.tar.bz2 |
Clean up "completer_handle_brkchars" callback handling
This patch cleans up "completer_handle_brkchars" callback handling:
- Renames the function typedef to better match its intent:
completer_ftype_void -> completer_handle_brkchars_ftype
- Factors out common code in complete_line_internal handling the
"handle_brkchars" callback to a separate function.
- Centralizes all the "completer method" to "handle_brkchars method"
mapping in a single function.
gdb/ChangeLog:
2017-07-17 Pedro Alves <palves@redhat.com>
* cli/cli-decode.c (set_cmd_completer_handle_brkchars): Adjust to
renames.
* cli/cli-decode.h (struct cmd_list_element) <completer>: Move
comments to completer_ftype's declaration.
<completer_handle_brkchars>: Change type to
completer_handle_brkchars_ftype.
* command.h (completer_ftype): Add describing comment and give
names to parameters.
(completer_ftype_void): Rename to ...
(completer_handle_brkchars_ftype) ... this. Add describing comment.
(set_cmd_completer_handle_brkchars): Adjust.
* completer.c (filename_completer_handle_brkchars): New function.
(complete_line_internal_normal_command): New function, factored
out from ...
(complete_line_internal): ... here.
(command_completer_handle_brkchars)
(default_completer_handle_brkchars)
(completer_handle_brkchars_func_for_completer): New functions.
* completer.h (set_gdb_completion_word_break_characters): Delete
declaration.
(completer_handle_brkchars_func_for_completer): New declaration.
* python/py-cmd.c (cmdpy_completer_handle_brkchars): Adjust to use
completer_handle_brkchars_func_for_completer.
Diffstat (limited to 'gdb/command.h')
-rw-r--r-- | gdb/command.h | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/gdb/command.h b/gdb/command.h index 4a56a51..2a190d4 100644 --- a/gdb/command.h +++ b/gdb/command.h @@ -174,18 +174,28 @@ 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. + + TEXT is the text beyond what was matched for the command itself + (leading whitespace is skipped). It stops where we are supposed to + stop completing (rl_point) and is '\0' terminated. WORD points in + the same buffer as TEXT, and completions should be returned + 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 *, const char *); + const char *text, const char *word); -typedef void completer_ftype_void (struct cmd_list_element *, - const char *, const char *); +/* Same, but for set_cmd_completer_handle_brkchars. */ +typedef void completer_handle_brkchars_ftype (struct cmd_list_element *, + const char *text, const char *word); extern void set_cmd_completer (struct cmd_list_element *, completer_ftype *); /* Set the completer_handle_brkchars callback. */ extern void set_cmd_completer_handle_brkchars (struct cmd_list_element *, - completer_ftype_void *); + completer_handle_brkchars_ftype *); /* HACK: cagney/2002-02-23: Code, mostly in tracepoints.c, grubs around in cmd objects to test the value of the commands sfunc(). */ |