17#if !defined (COMPLETER_H)
20#include "gdbsupport/gdb-hashtab.h"
21#include "gdbsupport/gdb_vecs.h"
149 gdb_assert (begin < end);
174 gdb_assert (prev <
range.first);
233 void set_match (
const char *m,
const char *m_for_lcd = NULL)
236 if (m_for_lcd == NULL)
341 const char *text = NULL,
const char *word = NULL);
429 class completion_hash_entry;
436 const char *text,
const char *word);
521extern gdb::unique_xmalloc_ptr<char>
523 const char *text,
const char *word);
528extern gdb::unique_xmalloc_ptr<char>
530 const char *text,
const char *word);
539 const char *line_buffer,
547 complete (
const char *line,
char const **word,
int *quote_char);
578 const char *,
const char *);
582 const char *,
const char *);
586 const char *,
const char *);
590 const char *,
const char *);
594 const char *,
const char *);
598 const char *,
const char *);
602 const char *,
const char *);
606 const char *,
const char *);
610 const char *,
const char *);
641 const char *text,
const char *word);
void mark_ignored_range(const char *begin, const char *end)
void set_match(const char *match)
std::string m_finished_storage
std::vector< std::pair< const char *, const char * > > m_ignored_ranges
void set_match(const char *match)
void discard_completions()
void set_custom_word_point(int point)
char * m_lowest_common_denominator
bool completes_to_completion_word(const char *word)
void recompute_lowest_common_denominator()
void add_completion(gdb::unique_xmalloc_ptr< char > name, completion_match_for_lcd *match_for_lcd=NULL, const char *text=NULL, const char *word=NULL)
bool have_completions() const
void set_quote_char(int quote_char)
void add_completions(completion_list &&list)
DISABLE_COPY_AND_ASSIGN(completion_tracker)
completion_match_result & reset_completion_match_result()
size_t m_lowest_common_denominator_max_length
void advance_custom_word_point_by(int len)
void set_suppress_append_ws(bool suppress)
bool use_custom_word_point() const
bool m_use_custom_word_point
bool m_lowest_common_denominator_valid
completion_match_result m_completion_match_result
bool m_lowest_common_denominator_unique
void remove_completion(const char *name)
void set_use_custom_word_point(bool enable)
bool suppress_append_ws() const
int custom_word_point() const
void recompute_lcd_visitor(completion_hash_entry *entry)
completion_result build_completion_result(const char *text, int start, int end)
bool m_suppress_append_ws
bool maybe_add_completion(gdb::unique_xmalloc_ptr< char > name, completion_match_for_lcd *match_for_lcd, const char *text, const char *word)
void completer_ftype(struct cmd_list_element *, completion_tracker &tracker, const char *text, const char *word)
void completer_handle_brkchars_ftype(struct cmd_list_element *, completion_tracker &tracker, const char *text, const char *word)
const char * skip_quoted(const char *)
void mld_flush_ftype(const struct match_list_displayer *)
char ** gdb_rl_attempted_completion_function(const char *text, int start, int end)
void command_completer(struct cmd_list_element *, completion_tracker &tracker, const char *, const char *)
void mld_erase_entire_line_ftype(const struct match_list_displayer *)
void reg_or_group_completer(struct cmd_list_element *, completion_tracker &tracker, const char *, const char *)
void complete_expression(completion_tracker &tracker, const char *text, const char *word)
void mld_crlf_ftype(const struct match_list_displayer *)
void signal_completer(struct cmd_list_element *, completion_tracker &tracker, const char *, const char *)
const char * completion_find_completion_word(completion_tracker &tracker, const char *text, int *quote_char)
gdb::unique_xmalloc_ptr< char > make_completion_match_str(const char *match_name, const char *text, const char *word)
void complete_line(completion_tracker &tracker, const char *text, const char *line_buffer, int point)
void mld_puts_ftype(const struct match_list_displayer *, const char *)
void noop_completer(struct cmd_list_element *, completion_tracker &tracker, const char *, const char *)
void reggroup_completer(struct cmd_list_element *, completion_tracker &tracker, const char *, const char *)
completer_handle_brkchars_ftype * completer_handle_brkchars_func_for_completer(completer_ftype *fn)
const char * get_max_completions_reached_message(void)
int mld_read_key_ftype(const struct match_list_displayer *)
std::vector< gdb::unique_xmalloc_ptr< char > > completion_list
const char * advance_to_expression_complete_word_point(completion_tracker &tracker, const char *text)
const char * advance_to_filename_complete_word_point(completion_tracker &tracker, const char *text)
void mld_putch_ftype(const struct match_list_displayer *, int)
void complete_nested_command_line(completion_tracker &tracker, const char *text)
const char * skip_quoted_chars(const char *, const char *, const char *)
void filename_completer(struct cmd_list_element *, completion_tracker &tracker, const char *, const char *)
void expression_completer(struct cmd_list_element *, completion_tracker &tracker, const char *, const char *)
completion_result complete(const char *line, char const **word, int *quote_char)
void location_completer(struct cmd_list_element *, completion_tracker &tracker, const char *, const char *)
char * gdb_completion_word_break_characters(void)
void gdb_display_match_list(char **matches, int len, int max, const struct match_list_displayer *)
completion_list complete_source_filenames(const char *text)
const char * get_gdb_completer_quote_characters(void)
void set_rl_completer_word_break_characters(const char *break_chars)
void symbol_completer(struct cmd_list_element *, completion_tracker &tracker, const char *, const char *)
void mld_beep_ftype(const struct match_list_displayer *)
void set_match(const char *m, const char *m_for_lcd=NULL)
completion_match_for_lcd match_for_lcd
bool completion_suppress_append
char ** release_match_list()
DISABLE_COPY_AND_ASSIGN(completion_result)
mld_erase_entire_line_ftype * erase_entire_line
mld_read_key_ftype * read_key