24#include "gdbsupport/array-view.h"
25#include "gdbsupport/gdb_optional.h"
43 FILE *stream,
const char *filename);
50 struct objfile *, FILE *stream,
const char *filename);
56 struct objfile *,
const char *
name,
const char *script);
214 (std::vector<type *> *type_args) = 0;
221 (
struct value *obj, gdb::array_view<value *> args,
222 struct type **result_type_ptr) = 0;
296 struct ui_out *out,
int frame_low,
int frame_high);
311 (
struct type *
type,
const char *method_name,
312 std::vector<xmethod_worker_up> *workers);
320 (
const std::string &filename,
const std::string &contents);
338 (
struct gdbarch *
gdbarch, CORE_ADDR address,
struct disassemble_info *info);
342extern void (*hook_set_active_ext_lang) ();
DISABLE_COPY_AND_ASSIGN(scoped_disable_cooperative_sigint_handling)
scoped_disable_cooperative_sigint_handling()
bool m_prev_cooperative_sigint_handling_disabled
~scoped_disable_cooperative_sigint_handling()
struct active_ext_lang_state * m_prev_active_ext_lang_state
void throw_ext_lang_unsupported(const struct extension_language_defn *)
DEF_ENUM_FLAGS_TYPE(enum frame_filter_flag, frame_filter_flags)
gdb::unique_xmalloc_ptr< char > apply_ext_lang_type_printers(struct ext_lang_type_printers *, struct type *)
const char * ext_lang_capitalized_name(const struct extension_language_defn *)
bool breakpoint_ext_lang_cond_says_stop(struct breakpoint *)
void eval_ext_lang_from_control_command(struct command_line *cmd)
gdb::optional< int > ext_lang_print_insn(struct gdbarch *gdbarch, CORE_ADDR address, struct disassemble_info *info)
void ext_lang_initialization(void)
gdb::optional< std::string > ext_lang_colorize_disasm(const std::string &content, gdbarch *gdbarch)
bool ext_lang_auto_load_enabled(const struct extension_language_defn *)
void preserve_ext_lang_values(struct objfile *, htab_t copied_types)
script_sourcer_func * ext_lang_script_sourcer(const struct extension_language_defn *)
std::unique_ptr< xmethod_worker > xmethod_worker_up
const char * ext_lang_suffix(const struct extension_language_defn *)
const struct extension_language_defn extension_language_gdb
const struct extension_language_defn * get_breakpoint_cond_ext_lang(struct breakpoint *b, enum extension_language skip_lang)
const char * ext_lang_name(const struct extension_language_defn *)
const struct extension_language_defn * get_ext_lang_defn(enum extension_language lang)
int apply_ext_lang_val_pretty_printer(struct value *value, struct ui_file *stream, int recurse, const struct value_print_options *options, const struct language_defn *language)
void auto_load_ext_lang_scripts_for_objfile(struct objfile *)
const struct extension_language_defn * get_ext_lang_of_file(const char *file)
int ext_lang_present_p(const struct extension_language_defn *)
void script_sourcer_func(const struct extension_language_defn *, FILE *stream, const char *filename)
enum ext_lang_bt_status apply_ext_lang_frame_filter(frame_info_ptr frame, frame_filter_flags flags, enum ext_lang_frame_args args_type, struct ui_out *out, int frame_low, int frame_high)
objfile_script_executor_func * ext_lang_objfile_script_executor(const struct extension_language_defn *)
void get_matching_xmethod_workers(struct type *type, const char *method_name, std::vector< xmethod_worker_up > *workers)
void objfile_script_sourcer_func(const struct extension_language_defn *, struct objfile *, FILE *stream, const char *filename)
gdb::optional< std::string > ext_lang_colorize(const std::string &filename, const std::string &contents)
const char * ext_lang_auto_load_suffix(const struct extension_language_defn *)
int ext_lang_initialized_p(const struct extension_language_defn *)
void objfile_script_executor_func(const struct extension_language_defn *, struct objfile *, const char *name, const char *script)
enum extension_language ext_lang_kind(const struct extension_language_defn *)
objfile_script_sourcer_func * ext_lang_objfile_script_sourcer(const struct extension_language_defn *)
mach_port_t kern_return_t mach_port_t mach_msg_type_name_t msgportsPoly mach_port_t kern_return_t pid_t pid mach_port_t kern_return_t mach_port_t task mach_port_t kern_return_t int flags
~ext_lang_type_printers()
DISABLE_COPY_AND_ASSIGN(ext_lang_type_printers)
virtual enum ext_lang_rc do_get_arg_types(std::vector< type * > *type_args)=0
std::vector< type * > get_arg_types()
const extension_language_defn * m_extlang
virtual enum ext_lang_rc do_get_result_type(struct value *obj, gdb::array_view< value * > args, struct type **result_type_ptr)=0
virtual value * invoke(value *obj, gdb::array_view< value * > args)=0
type * get_result_type(value *object, gdb::array_view< value * > args)
virtual ~xmethod_worker()=default
xmethod_worker(const extension_language_defn *extlang)