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 |