| OLD | NEW |
| 1 /* Output generating routines for GDB. | 1 /* Output generating routines for GDB. |
| 2 | 2 |
| 3 Copyright (C) 1999-2003, 2005, 2007-2012 Free Software Foundation, | 3 Copyright (C) 1999-2003, 2005, 2007-2012 Free Software Foundation, |
| 4 Inc. | 4 Inc. |
| 5 | 5 |
| 6 Contributed by Cygnus Solutions. | 6 Contributed by Cygnus Solutions. |
| 7 Written by Fernando Nasser for Cygnus. | 7 Written by Fernando Nasser for Cygnus. |
| 8 | 8 |
| 9 This file is part of GDB. | 9 This file is part of GDB. |
| 10 | 10 |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 45 }; | 45 }; |
| 46 | 46 |
| 47 /* flags enum */ | 47 /* flags enum */ |
| 48 enum ui_flags | 48 enum ui_flags |
| 49 { | 49 { |
| 50 ui_from_tty = 1, | 50 ui_from_tty = 1, |
| 51 ui_source_list = 2 | 51 ui_source_list = 2 |
| 52 }; | 52 }; |
| 53 | 53 |
| 54 | 54 |
| 55 /* The ui_out stream structure. */ | |
| 56 /* NOTE: cagney/2000-02-01: The ui_stream object can be subsumed by | |
| 57 the more generic ui_file object. */ | |
| 58 | |
| 59 struct ui_stream | |
| 60 { | |
| 61 struct ui_out *uiout; | |
| 62 struct ui_file *stream; | |
| 63 }; | |
| 64 | |
| 65 | |
| 66 /* Prototypes for ui-out API. */ | 55 /* Prototypes for ui-out API. */ |
| 67 | 56 |
| 68 /* A result is a recursive data structure consisting of lists and | 57 /* A result is a recursive data structure consisting of lists and |
| 69 tuples. */ | 58 tuples. */ |
| 70 | 59 |
| 71 enum ui_out_type | 60 enum ui_out_type |
| 72 { | 61 { |
| 73 ui_out_type_tuple, | 62 ui_out_type_tuple, |
| 74 ui_out_type_list | 63 ui_out_type_list |
| 75 }; | 64 }; |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 115 | 104 |
| 116 /* Output a field containing an address. */ | 105 /* Output a field containing an address. */ |
| 117 | 106 |
| 118 extern void ui_out_field_core_addr (struct ui_out *uiout, const char *fldname, | 107 extern void ui_out_field_core_addr (struct ui_out *uiout, const char *fldname, |
| 119 struct gdbarch *gdbarch, CORE_ADDR address); | 108 struct gdbarch *gdbarch, CORE_ADDR address); |
| 120 | 109 |
| 121 extern void ui_out_field_string (struct ui_out * uiout, const char *fldname, | 110 extern void ui_out_field_string (struct ui_out * uiout, const char *fldname, |
| 122 const char *string); | 111 const char *string); |
| 123 | 112 |
| 124 extern void ui_out_field_stream (struct ui_out *uiout, const char *fldname, | 113 extern void ui_out_field_stream (struct ui_out *uiout, const char *fldname, |
| 125 » » » » struct ui_stream *buf); | 114 » » » » struct ui_file *stream); |
| 126 | 115 |
| 127 extern void ui_out_field_fmt (struct ui_out *uiout, const char *fldname, | 116 extern void ui_out_field_fmt (struct ui_out *uiout, const char *fldname, |
| 128 const char *format, ...) | 117 const char *format, ...) |
| 129 ATTRIBUTE_PRINTF (3, 4); | 118 ATTRIBUTE_PRINTF (3, 4); |
| 130 | 119 |
| 131 extern void ui_out_field_skip (struct ui_out *uiout, const char *fldname); | 120 extern void ui_out_field_skip (struct ui_out *uiout, const char *fldname); |
| 132 | 121 |
| 133 extern void ui_out_spaces (struct ui_out *uiout, int numspaces); | 122 extern void ui_out_spaces (struct ui_out *uiout, int numspaces); |
| 134 | 123 |
| 135 extern void ui_out_text (struct ui_out *uiout, const char *string); | 124 extern void ui_out_text (struct ui_out *uiout, const char *string); |
| 136 | 125 |
| 137 extern void ui_out_message (struct ui_out *uiout, int verbosity, | 126 extern void ui_out_message (struct ui_out *uiout, int verbosity, |
| 138 const char *format, ...) | 127 const char *format, ...) |
| 139 ATTRIBUTE_PRINTF (3, 4); | 128 ATTRIBUTE_PRINTF (3, 4); |
| 140 | 129 |
| 141 extern struct ui_stream *ui_out_stream_new (struct ui_out *uiout); | |
| 142 | |
| 143 extern void ui_out_stream_delete (struct ui_stream *buf); | |
| 144 | |
| 145 struct cleanup *make_cleanup_ui_out_stream_delete (struct ui_stream *buf); | |
| 146 | |
| 147 extern void ui_out_wrap_hint (struct ui_out *uiout, char *identstring); | 130 extern void ui_out_wrap_hint (struct ui_out *uiout, char *identstring); |
| 148 | 131 |
| 149 extern void ui_out_flush (struct ui_out *uiout); | 132 extern void ui_out_flush (struct ui_out *uiout); |
| 150 | 133 |
| 151 extern int ui_out_set_flags (struct ui_out *uiout, int mask); | 134 extern int ui_out_set_flags (struct ui_out *uiout, int mask); |
| 152 | 135 |
| 153 extern int ui_out_clear_flags (struct ui_out *uiout, int mask); | 136 extern int ui_out_clear_flags (struct ui_out *uiout, int mask); |
| 154 | 137 |
| 155 extern int ui_out_get_verblvl (struct ui_out *uiout); | 138 extern int ui_out_get_verblvl (struct ui_out *uiout); |
| 156 | 139 |
| 157 extern int ui_out_test_flags (struct ui_out *uiout, int mask); | 140 extern int ui_out_test_flags (struct ui_out *uiout, int mask); |
| 158 | 141 |
| 159 extern int ui_out_query_field (struct ui_out *uiout, int colno, | 142 extern int ui_out_query_field (struct ui_out *uiout, int colno, |
| 160 int *width, int *alignment, char **col_name); | 143 int *width, int *alignment, char **col_name); |
| 161 | 144 |
| 162 #if 0 | |
| 163 extern void ui_out_result_begin (struct ui_out *uiout, char *class); | |
| 164 | |
| 165 extern void ui_out_result_end (struct ui_out *uiout); | |
| 166 | |
| 167 extern void ui_out_info_begin (struct ui_out *uiout, char *class); | |
| 168 | |
| 169 extern void ui_out_info_end (struct ui_out *uiout); | |
| 170 | |
| 171 extern void ui_out_notify_begin (struct ui_out *uiout, char *class); | |
| 172 | |
| 173 extern void ui_out_notify_end (struct ui_out *uiout); | |
| 174 | |
| 175 extern void ui_out_error_begin (struct ui_out *uiout, char *class); | |
| 176 | |
| 177 extern void ui_out_error_end (struct ui_out *uiout); | |
| 178 #endif | |
| 179 | |
| 180 #if 0 | |
| 181 extern void gdb_error (struct ui_out *uiout, int severity, char *format, ...); | |
| 182 | |
| 183 extern void gdb_query (struct ui_out *uiout, int qflags, char *qprompt); | |
| 184 #endif | |
| 185 | |
| 186 /* HACK: Code in GDB is currently checking to see the type of ui_out | 145 /* HACK: Code in GDB is currently checking to see the type of ui_out |
| 187 builder when determining which output to produce. This function is | 146 builder when determining which output to produce. This function is |
| 188 a hack to encapsulate that test. Once GDB manages to separate the | 147 a hack to encapsulate that test. Once GDB manages to separate the |
| 189 CLI/MI from the core of GDB the problem should just go away .... */ | 148 CLI/MI from the core of GDB the problem should just go away .... */ |
| 190 | 149 |
| 191 extern int ui_out_is_mi_like_p (struct ui_out *uiout); | 150 extern int ui_out_is_mi_like_p (struct ui_out *uiout); |
| 192 | 151 |
| 193 /* From here on we have things that are only needed by implementation | 152 /* From here on we have things that are only needed by implementation |
| 194 routines and main.c. We should pehaps have a separate file for that, | 153 routines and main.c. We should pehaps have a separate file for that, |
| 195 like a ui-out-impl.h file. */ | 154 like a ui-out-impl.h file. */ |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 276 | 235 |
| 277 extern struct ui_out *ui_out_new (struct ui_out_impl *impl, | 236 extern struct ui_out *ui_out_new (struct ui_out_impl *impl, |
| 278 void *data, | 237 void *data, |
| 279 int flags); | 238 int flags); |
| 280 | 239 |
| 281 /* Redirect the ouptut of a ui_out object temporarily. */ | 240 /* Redirect the ouptut of a ui_out object temporarily. */ |
| 282 | 241 |
| 283 extern int ui_out_redirect (struct ui_out *uiout, struct ui_file *outstream); | 242 extern int ui_out_redirect (struct ui_out *uiout, struct ui_file *outstream); |
| 284 | 243 |
| 285 #endif /* UI_OUT_H */ | 244 #endif /* UI_OUT_H */ |
| OLD | NEW |