GDB (xrefs)
Loading...
Searching...
No Matches
mi-main.h
Go to the documentation of this file.
1/* MI Internal Functions for GDB, the GNU debugger.
2
3 Copyright (C) 2003-2023 Free Software Foundation, Inc.
4
5 This file is part of GDB.
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
19
20#ifndef MI_MI_MAIN_H
21#define MI_MI_MAIN_H
22
23struct ui_file;
24
25extern void mi_load_progress (const char *section_name,
26 unsigned long sent_so_far,
27 unsigned long total_section,
28 unsigned long total_sent,
29 unsigned long grand_total);
30
31extern void mi_print_timing_maybe (struct ui_file *file);
32
33/* Whether MI is in async mode. */
34
35extern int mi_async_p (void);
36
37extern char *current_token;
38
40extern int mi_proceeded;
41
43{
44 /* Breakpoint notification suppressed? */
46 /* Command param changed notification suppressed? */
48 /* Traceframe changed notification suppressed? */
50 /* Memory changed notification suppressed? */
51 int memory;
52 /* User selected context changed notification suppressed? */
54};
56
57/* This is a hack so we can get some extra commands going, but has existed
58 within GDB for many years now. Ideally we don't want to channel things
59 through the CLI, but implement all commands as pure MI commands with
60 their own implementation.
61
62 Execute the CLI command CMD, if ARGS_P is true then ARGS should be a
63 non-nullptr string containing arguments to add after CMD. If ARGS_P is
64 false then ARGS must be nullptr. */
65
66extern void mi_execute_cli_command (const char *cmd, bool args_p,
67 const char *args);
68
69/* Implementation of -fix-multi-location-breakpoint-output. */
70
71extern void mi_cmd_fix_multi_location_breakpoint_output (const char *command,
72 char **argv, int argc);
73
74/* Implementation of -fix-breakpoint-script-output. */
75
76extern void mi_cmd_fix_breakpoint_script_output (const char *command,
77 char **argv, int argc);
78
79#endif /* MI_MI_MAIN_H */
void mi_load_progress(const char *section_name, unsigned long sent_so_far, unsigned long total_section, unsigned long total_sent, unsigned long grand_total)
Definition: mi-main.c:2153
void mi_cmd_fix_breakpoint_script_output(const char *command, char **argv, int argc)
Definition: mi-main.c:2708
void mi_cmd_fix_multi_location_breakpoint_output(const char *command, char **argv, int argc)
Definition: mi-main.c:2699
char * current_token
Definition: mi-main.c:80
void mi_print_timing_maybe(struct ui_file *file)
Definition: mi-main.c:2237
int mi_async_p(void)
Definition: mi-main.c:135
int running_result_record_printed
Definition: mi-main.c:86
int mi_proceeded
Definition: mi-main.c:90
void mi_execute_cli_command(const char *cmd, bool args_p, const char *args)
Definition: mi-main.c:2120