25#include "gdbsupport/intrusive_list.h"
37typedef struct interp *(*interp_factory_func) (
const char *
name);
50class interp :
public intrusive_list_node<interp>
56 virtual void init (
bool top_level)
62 virtual void exec (
const char *command) = 0;
126 gdb::optional<ULONGEST> exit_code,
144 const char *method,
const char *format) {}
185 const bfd_byte *data) {}
288 (user_selected_what selection);
295 gdb::optional<ULONGEST> exit_code,
364 ssize_t len,
const bfd_byte *data);
367#define INTERP_CONSOLE "console"
368#define INTERP_MI2 "mi2"
369#define INTERP_MI3 "mi3"
370#define INTERP_MI4 "mi4"
371#define INTERP_MI "mi"
372#define INTERP_TUI "tui"
373#define INTERP_INSIGHT "insight"
virtual void on_target_resumed(ptid_t ptid)
virtual void on_param_changed(const char *param, const char *value)
virtual void on_inferior_disappeared(inferior *inf)
virtual void on_breakpoint_modified(breakpoint *b)
virtual void exec(const char *command)=0
virtual void on_about_to_proceed()
virtual void on_inferior_added(inferior *inf)
virtual void on_traceframe_changed(int tfnum, int tpnum)
virtual void on_memory_changed(inferior *inf, CORE_ADDR addr, ssize_t len, const bfd_byte *data)
virtual void on_user_selected_context_changed(user_selected_what selection)
virtual void on_no_history()
virtual void on_signal_exited(gdb_signal sig)
virtual void on_new_thread(thread_info *t)
virtual bool supports_command_editing()
virtual void on_breakpoint_deleted(breakpoint *b)
virtual void set_logging(ui_file_up logfile, bool logging_redirect, bool debug_redirect)=0
virtual void on_breakpoint_created(breakpoint *b)
virtual ui_out * interp_ui_out()=0
virtual void pre_command_loop()
virtual void on_tsv_modified(const trace_state_variable *tsv)
virtual void on_record_changed(inferior *inf, int started, const char *method, const char *format)
virtual void on_solib_unloaded(so_list *so)
virtual void on_exited(int status)
virtual void on_tsv_deleted(const trace_state_variable *tsv)
virtual void on_thread_exited(thread_info *, gdb::optional< ULONGEST > exit_code, int silent)
const char * name() const
virtual void on_inferior_appeared(inferior *inf)
virtual void init(bool top_level)
virtual void on_command_error()
virtual void on_signal_received(gdb_signal sig)
virtual void on_tsv_created(const trace_state_variable *tsv)
virtual void on_inferior_removed(inferior *inf)
virtual void on_solib_loaded(so_list *so)
virtual void on_normal_stop(bpstat *bs, int print_frame)
virtual void on_sync_execution_done()
scoped_restore_interp & operator=(const scoped_restore_interp &)=delete
scoped_restore_interp(const char *name)
scoped_restore_interp(const scoped_restore_interp &)=delete
struct interp * set_interp(const char *name)
static bool debug_redirect
static bool logging_redirect
mach_port_t mach_port_t name mach_port_t mach_port_t name kern_return_t int status
void interps_notify_inferior_removed(inferior *inf)
struct interp * interp_lookup(struct ui *ui, const char *name)
void interps_notify_breakpoint_created(breakpoint *b)
void interps_notify_no_history()
int current_interp_named_p(const char *name)
void interps_notify_solib_loaded(so_list *so)
void clear_interpreter_hooks(void)
void interps_notify_thread_exited(thread_info *t, gdb::optional< ULONGEST > exit_code, int silent)
void interp_exec(struct interp *interp, const char *command)
void interps_notify_tsv_deleted(const trace_state_variable *tsv)
struct interp * current_interpreter(void)
struct interp * top_level_interpreter(void)
void interps_notify_signal_received(gdb_signal sig)
void interps_notify_breakpoint_modified(breakpoint *b)
void set_top_level_interpreter(const char *name)
void interps_notify_normal_stop(bpstat *bs, int print_frame)
void interps_notify_inferior_added(inferior *inf)
struct interp * command_interp(void)
void interp_factory_register(const char *name, interp_factory_func func)
void interps_notify_solib_unloaded(so_list *so)
void interps_notify_breakpoint_deleted(breakpoint *b)
void interpreter_completer(struct cmd_list_element *ignore, completion_tracker &tracker, const char *text, const char *word)
void interps_notify_signal_exited(gdb_signal sig)
void current_interp_set_logging(ui_file_up logfile, bool logging_redirect, bool debug_redirect)
void interps_notify_user_selected_context_changed(user_selected_what selection)
void interps_notify_target_resumed(ptid_t ptid)
void interps_notify_param_changed(const char *param, const char *value)
void interps_notify_traceframe_changed(int tfnum, int tpnum)
void interps_notify_new_thread(thread_info *t)
struct interp *(* interp_factory_func)(const char *name)
void interps_notify_memory_changed(inferior *inf, CORE_ADDR addr, ssize_t len, const bfd_byte *data)
void interps_notify_inferior_disappeared(inferior *inf)
void interps_notify_exited(int status)
void interps_notify_inferior_appeared(inferior *inf)
void interps_notify_tsv_created(const trace_state_variable *tsv)
void interps_notify_tsv_modified(const trace_state_variable *tsv)
void interps_notify_record_changed(inferior *inf, int started, const char *method, const char *format)
void(* func)(remote_target *remote, char *)
static void print_frame(const frame_print_options &opts, frame_info_ptr frame, int print_level, enum print_what print_what, int print_args, struct symtab_and_line sal)
std::unique_ptr< ui_file > ui_file_up