diff options
author | Doug Evans <dje@google.com> | 2014-01-14 18:36:33 -0800 |
---|---|---|
committer | Doug Evans <dje@google.com> | 2014-01-14 18:36:33 -0800 |
commit | bb4142cf49651ddcb0e00f6aaf451272c4c9977d (patch) | |
tree | 4582bd5006b3e7e0988522d52e07c8a0174fc2f7 /gdb/symtab.c | |
parent | 206f2a5777679e6d1ad21ce435f6e7af92e2d41a (diff) | |
download | gdb-bb4142cf49651ddcb0e00f6aaf451272c4c9977d.zip gdb-bb4142cf49651ddcb0e00f6aaf451272c4c9977d.tar.gz gdb-bb4142cf49651ddcb0e00f6aaf451272c4c9977d.tar.bz2 |
psymtab cleanup patch 3/3
This last patch removes "partial" from the names of
expand_partial_symbol_names and map_partial_symbol_filenames.
It also renames expand_partial_symbol_names to match the
struct quick_symbol_functions "method" that it wraps:
expand_symtabs_matching.
This patch also adds two parameters to expand_symtabs_matching
so that it can fully wrap the underlying quick_symbol_functions method.
This makes it usable in more places.
I thought of having a cover function that still had the same
signature as the old expand_partial_symbol_names function,
but I couldn't think of a good name, and it wasn't clear it was
worth it anyway.
* symfile.h (expand_symtabs_matching): Renamed from
expand_partial_symbol_names. Update prototype.
(map_symbol_filenames): Renamed from map_partial_symbol_filenames.
* symfile.c (expand_symtabs_matching): Renamed from
expand_partial_symbol_names. New args file_matcher, kind.
Rename arg fun to symbol_matcher.
(map_symbol_filenames): Renamed from map_partial_symbol_filenames.
* ada-lang.c (ada_complete_symbol_matcher): Renamed from
ada_expand_partial_symbol_name.
(ada_make_symbol_completion_list): Update to call
expand_symtabs_matching.
(ada_add_global_exceptions): Call expand_symtabs_matching.
* mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update to
call map_symbol_filenames.
* symtab.c (sources_info): Update to call map_symbol_filenames.
(search_symbols): Call expand_symtabs_matching.
(symbol_completion_matcher): Renamed from expand_partial_symbol_name.
(default_make_symbol_completion_list_break_on): Update to call
expand_symtabs_matching.
(make_source_files_completion_list): Update to call
map_symbol_filenames.
Diffstat (limited to 'gdb/symtab.c')
-rw-r--r-- | gdb/symtab.c | 33 |
1 files changed, 14 insertions, 19 deletions
diff --git a/gdb/symtab.c b/gdb/symtab.c index 97cec58..5e988c8 100644 --- a/gdb/symtab.c +++ b/gdb/symtab.c @@ -3319,8 +3319,8 @@ sources_info (char *ignore, int from_tty) clear_filename_seen_cache (data.filename_seen_cache); data.first = 1; - map_partial_symbol_filenames (output_partial_symbol_filename, &data, - 1 /*need_fullname*/); + map_symbol_filenames (output_partial_symbol_filename, &data, + 1 /*need_fullname*/); printf_filtered ("\n"); do_cleanups (cleanups); @@ -3602,17 +3602,11 @@ search_symbols (char *regexp, enum search_domain kind, datum.nfiles = nfiles; datum.files = files; - ALL_OBJFILES (objfile) - { - if (objfile->sf) - objfile->sf->qf->expand_symtabs_matching (objfile, - (nfiles == 0 - ? NULL - : search_symbols_file_matches), - search_symbols_name_matches, - kind, - &datum); - } + expand_symtabs_matching ((nfiles == 0 + ? NULL + : search_symbols_file_matches), + search_symbols_name_matches, + kind, &datum); /* Here, we search through the minimal symbol tables for functions and variables that match, and force their symbols to be read. @@ -4253,7 +4247,7 @@ completion_list_add_fields (struct symbol *sym, const char *sym_text, } /* Type of the user_data argument passed to add_macro_name or - expand_partial_symbol_name. The contents are simply whatever is + symbol_completion_matcher. The contents are simply whatever is needed by completion_list_add_name. */ struct add_name_data { @@ -4278,10 +4272,10 @@ add_macro_name (const char *name, const struct macro_definition *ignore, datum->text, datum->word); } -/* A callback for expand_partial_symbol_names. */ +/* A callback for expand_symtabs_matching. */ static int -expand_partial_symbol_name (const char *name, void *user_data) +symbol_completion_matcher (const char *name, void *user_data) { struct add_name_data *datum = (struct add_name_data *) user_data; @@ -4392,7 +4386,8 @@ default_make_symbol_completion_list_break_on (const char *text, /* Look through the partial symtabs for all symbols which begin by matching SYM_TEXT. Expand all CUs that you find to the list. The real names will get added by COMPLETION_LIST_ADD_SYMBOL below. */ - expand_partial_symbol_names (expand_partial_symbol_name, &datum); + expand_symtabs_matching (NULL, symbol_completion_matcher, ALL_DOMAIN, + &datum); /* At this point scan through the misc symbol vectors and add each symbol you find to the list. Eventually we want to ignore @@ -4806,8 +4801,8 @@ make_source_files_completion_list (const char *text, const char *word) datum.word = word; datum.text_len = text_len; datum.list = &list; - map_partial_symbol_filenames (maybe_add_partial_symtab_filename, &datum, - 0 /*need_fullname*/); + map_symbol_filenames (maybe_add_partial_symtab_filename, &datum, + 0 /*need_fullname*/); do_cleanups (cache_cleanup); discard_cleanups (back_to); |