1 /* htmlmarkupwriter.c generated by valac, the Vala compiler
2  * generated from htmlmarkupwriter.vala, do not modify */
3 
4 /* markupwriter.vala
5  *
6  * Copyright (C) 2008-2014 Florian Brosch, Didier Villevalois
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2.1 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
21  *
22  * Author:
23  * 	Didier 'Ptitjes Villevalois <ptitjes@free.fr>
24  */
25 
26 #include "valadoc.h"
27 #include <stdlib.h>
28 #include <string.h>
29 #include <glib.h>
30 #include <stdio.h>
31 
32 typedef struct _Block7Data Block7Data;
33 #define _valadoc_markup_writer_unref0(var) ((var == NULL) ? NULL : (var = (valadoc_markup_writer_unref (var), NULL)))
34 typedef struct _Block8Data Block8Data;
35 #define _g_free0(var) (var = (g_free (var), NULL))
36 
37 struct _Block7Data {
38 	int _ref_count_;
39 	ValadocHtmlMarkupWriter* self;
40 	FILE* _stream;
41 };
42 
43 struct _Block8Data {
44 	int _ref_count_;
45 	ValadocHtmlMarkupWriter* self;
46 	GString* _builder;
47 };
48 
49 static gpointer valadoc_html_markup_writer_parent_class = NULL;
50 
51 static Block7Data* block7_data_ref (Block7Data* _data7_);
52 static void block7_data_unref (void * _userdata_);
53 static void __lambda137_ (Block7Data* _data7_,
54                    const gchar* str);
55 static void ___lambda137__valadoc_markup_writer_write_func (const gchar* text,
56                                                      gpointer self);
57 static Block8Data* block8_data_ref (Block8Data* _data8_);
58 static void block8_data_unref (void * _userdata_);
59 static void __lambda138_ (Block8Data* _data8_,
60                    const gchar* str);
61 static void ___lambda138__valadoc_markup_writer_write_func (const gchar* text,
62                                                      gpointer self);
63 static gboolean valadoc_html_markup_writer_real_inline_element (ValadocMarkupWriter* base,
64                                                          const gchar* name);
65 static gboolean valadoc_html_markup_writer_real_content_inline_element (ValadocMarkupWriter* base,
66                                                                  const gchar* name);
67 static GType valadoc_html_markup_writer_get_type_once (void);
68 static void _vala_array_destroy (gpointer array,
69                           gint array_length,
70                           GDestroyNotify destroy_func);
71 static void _vala_array_free (gpointer array,
72                        gint array_length,
73                        GDestroyNotify destroy_func);
74 
75 static Block7Data*
block7_data_ref(Block7Data * _data7_)76 block7_data_ref (Block7Data* _data7_)
77 {
78 	g_atomic_int_inc (&_data7_->_ref_count_);
79 	return _data7_;
80 }
81 
82 static void
block7_data_unref(void * _userdata_)83 block7_data_unref (void * _userdata_)
84 {
85 	Block7Data* _data7_;
86 	_data7_ = (Block7Data*) _userdata_;
87 	if (g_atomic_int_dec_and_test (&_data7_->_ref_count_)) {
88 		ValadocHtmlMarkupWriter* self;
89 		self = _data7_->self;
90 		_valadoc_markup_writer_unref0 (self);
91 		g_slice_free (Block7Data, _data7_);
92 	}
93 }
94 
95 static void
__lambda137_(Block7Data * _data7_,const gchar * str)96 __lambda137_ (Block7Data* _data7_,
97               const gchar* str)
98 {
99 	ValadocHtmlMarkupWriter* self;
100 	FILE* _tmp0_;
101 	self = _data7_->self;
102 	g_return_if_fail (str != NULL);
103 	_tmp0_ = _data7_->_stream;
104 	fprintf (_tmp0_, "%s", str);
105 }
106 
107 static void
___lambda137__valadoc_markup_writer_write_func(const gchar * text,gpointer self)108 ___lambda137__valadoc_markup_writer_write_func (const gchar* text,
109                                                 gpointer self)
110 {
111 	__lambda137_ (self, text);
112 }
113 
114 ValadocHtmlMarkupWriter*
valadoc_html_markup_writer_construct(GType object_type,FILE * stream,gboolean html5_declaration)115 valadoc_html_markup_writer_construct (GType object_type,
116                                       FILE* stream,
117                                       gboolean html5_declaration)
118 {
119 	ValadocHtmlMarkupWriter* self = NULL;
120 	Block7Data* _data7_;
121 	g_return_val_if_fail (stream != NULL, NULL);
122 	_data7_ = g_slice_new0 (Block7Data);
123 	_data7_->_ref_count_ = 1;
124 	_data7_->_stream = stream;
125 	self = (ValadocHtmlMarkupWriter*) valadoc_markup_writer_construct (object_type, ___lambda137__valadoc_markup_writer_write_func, block7_data_ref (_data7_), block7_data_unref, FALSE);
126 	_data7_->self = valadoc_markup_writer_ref (self);
127 	if (html5_declaration) {
128 		valadoc_markup_writer_do_write ((ValadocMarkupWriter*) self, "<!DOCTYPE html>");
129 	}
130 	block7_data_unref (_data7_);
131 	_data7_ = NULL;
132 	return self;
133 }
134 
135 ValadocHtmlMarkupWriter*
valadoc_html_markup_writer_new(FILE * stream,gboolean html5_declaration)136 valadoc_html_markup_writer_new (FILE* stream,
137                                 gboolean html5_declaration)
138 {
139 	return valadoc_html_markup_writer_construct (VALADOC_HTML_TYPE_MARKUP_WRITER, stream, html5_declaration);
140 }
141 
142 static Block8Data*
block8_data_ref(Block8Data * _data8_)143 block8_data_ref (Block8Data* _data8_)
144 {
145 	g_atomic_int_inc (&_data8_->_ref_count_);
146 	return _data8_;
147 }
148 
149 static void
block8_data_unref(void * _userdata_)150 block8_data_unref (void * _userdata_)
151 {
152 	Block8Data* _data8_;
153 	_data8_ = (Block8Data*) _userdata_;
154 	if (g_atomic_int_dec_and_test (&_data8_->_ref_count_)) {
155 		ValadocHtmlMarkupWriter* self;
156 		self = _data8_->self;
157 		_valadoc_markup_writer_unref0 (self);
158 		g_slice_free (Block8Data, _data8_);
159 	}
160 }
161 
162 static void
__lambda138_(Block8Data * _data8_,const gchar * str)163 __lambda138_ (Block8Data* _data8_,
164               const gchar* str)
165 {
166 	ValadocHtmlMarkupWriter* self;
167 	GString* _tmp0_;
168 	self = _data8_->self;
169 	g_return_if_fail (str != NULL);
170 	_tmp0_ = _data8_->_builder;
171 	g_string_append (_tmp0_, str);
172 }
173 
174 static void
___lambda138__valadoc_markup_writer_write_func(const gchar * text,gpointer self)175 ___lambda138__valadoc_markup_writer_write_func (const gchar* text,
176                                                 gpointer self)
177 {
178 	__lambda138_ (self, text);
179 }
180 
181 ValadocHtmlMarkupWriter*
valadoc_html_markup_writer_construct_builder(GType object_type,GString * builder,gboolean html5_declaration)182 valadoc_html_markup_writer_construct_builder (GType object_type,
183                                               GString* builder,
184                                               gboolean html5_declaration)
185 {
186 	ValadocHtmlMarkupWriter* self = NULL;
187 	Block8Data* _data8_;
188 	g_return_val_if_fail (builder != NULL, NULL);
189 	_data8_ = g_slice_new0 (Block8Data);
190 	_data8_->_ref_count_ = 1;
191 	_data8_->_builder = builder;
192 	self = (ValadocHtmlMarkupWriter*) valadoc_markup_writer_construct (object_type, ___lambda138__valadoc_markup_writer_write_func, block8_data_ref (_data8_), block8_data_unref, FALSE);
193 	_data8_->self = valadoc_markup_writer_ref (self);
194 	if (html5_declaration) {
195 		valadoc_markup_writer_do_write ((ValadocMarkupWriter*) self, "<!DOCTYPE html>");
196 	}
197 	block8_data_unref (_data8_);
198 	_data8_ = NULL;
199 	return self;
200 }
201 
202 ValadocHtmlMarkupWriter*
valadoc_html_markup_writer_new_builder(GString * builder,gboolean html5_declaration)203 valadoc_html_markup_writer_new_builder (GString* builder,
204                                         gboolean html5_declaration)
205 {
206 	return valadoc_html_markup_writer_construct_builder (VALADOC_HTML_TYPE_MARKUP_WRITER, builder, html5_declaration);
207 }
208 
209 ValadocHtmlMarkupWriter*
valadoc_html_markup_writer_add_usemap(ValadocHtmlMarkupWriter * self,ValadocChartsChart * chart)210 valadoc_html_markup_writer_add_usemap (ValadocHtmlMarkupWriter* self,
211                                        ValadocChartsChart* chart)
212 {
213 	gchar* buf = NULL;
214 	gint _tmp0_ = 0;
215 	guint8* _tmp1_;
216 	const gchar* _tmp2_;
217 	ValadocHtmlMarkupWriter* result = NULL;
218 	g_return_val_if_fail (self != NULL, NULL);
219 	g_return_val_if_fail (chart != NULL, NULL);
220 	_tmp1_ = valadoc_charts_chart_write_buffer (chart, "cmapx", &_tmp0_);
221 	buf = (gchar*) _tmp1_;
222 	_tmp2_ = buf;
223 	if (_tmp2_ != NULL) {
224 		const gchar* _tmp3_;
225 		valadoc_markup_writer_raw_text ((ValadocMarkupWriter*) self, "\n");
226 		_tmp3_ = buf;
227 		valadoc_markup_writer_raw_text ((ValadocMarkupWriter*) self, (const gchar*) _tmp3_);
228 	}
229 	result = self;
230 	_g_free0 (buf);
231 	return result;
232 }
233 
234 ValadocHtmlMarkupWriter*
valadoc_html_markup_writer_link(ValadocHtmlMarkupWriter * self,const gchar * url,const gchar * label,const gchar * css_class)235 valadoc_html_markup_writer_link (ValadocHtmlMarkupWriter* self,
236                                  const gchar* url,
237                                  const gchar* label,
238                                  const gchar* css_class)
239 {
240 	ValadocHtmlMarkupWriter* result = NULL;
241 	g_return_val_if_fail (self != NULL, NULL);
242 	g_return_val_if_fail (url != NULL, NULL);
243 	g_return_val_if_fail (label != NULL, NULL);
244 	if (css_class == NULL) {
245 		gchar* _tmp0_;
246 		gchar* _tmp1_;
247 		gchar** _tmp2_;
248 		gchar** _tmp3_;
249 		gint _tmp3__length1;
250 		_tmp0_ = g_strdup ("href");
251 		_tmp1_ = g_strdup (url);
252 		_tmp2_ = g_new0 (gchar*, 2 + 1);
253 		_tmp2_[0] = _tmp0_;
254 		_tmp2_[1] = _tmp1_;
255 		_tmp3_ = _tmp2_;
256 		_tmp3__length1 = 2;
257 		valadoc_markup_writer_start_tag ((ValadocMarkupWriter*) self, "a", _tmp3_, (gint) 2);
258 		_tmp3_ = (_vala_array_free (_tmp3_, _tmp3__length1, (GDestroyNotify) g_free), NULL);
259 	} else {
260 		gchar* _tmp4_;
261 		gchar* _tmp5_;
262 		gchar* _tmp6_;
263 		gchar* _tmp7_;
264 		gchar** _tmp8_;
265 		gchar** _tmp9_;
266 		gint _tmp9__length1;
267 		_tmp4_ = g_strdup ("href");
268 		_tmp5_ = g_strdup (url);
269 		_tmp6_ = g_strdup ("class");
270 		_tmp7_ = g_strdup (css_class);
271 		_tmp8_ = g_new0 (gchar*, 4 + 1);
272 		_tmp8_[0] = _tmp4_;
273 		_tmp8_[1] = _tmp5_;
274 		_tmp8_[2] = _tmp6_;
275 		_tmp8_[3] = _tmp7_;
276 		_tmp9_ = _tmp8_;
277 		_tmp9__length1 = 4;
278 		valadoc_markup_writer_start_tag ((ValadocMarkupWriter*) self, "a", _tmp9_, (gint) 4);
279 		_tmp9_ = (_vala_array_free (_tmp9_, _tmp9__length1, (GDestroyNotify) g_free), NULL);
280 	}
281 	valadoc_markup_writer_text ((ValadocMarkupWriter*) self, label);
282 	valadoc_markup_writer_end_tag ((ValadocMarkupWriter*) self, "a");
283 	result = self;
284 	return result;
285 }
286 
287 ValadocHtmlMarkupWriter*
valadoc_html_markup_writer_image(ValadocHtmlMarkupWriter * self,const gchar * src,const gchar * caption,const gchar * css_class)288 valadoc_html_markup_writer_image (ValadocHtmlMarkupWriter* self,
289                                   const gchar* src,
290                                   const gchar* caption,
291                                   const gchar* css_class)
292 {
293 	ValadocHtmlMarkupWriter* result = NULL;
294 	g_return_val_if_fail (self != NULL, NULL);
295 	g_return_val_if_fail (src != NULL, NULL);
296 	if (css_class == NULL) {
297 		gchar* _tmp0_;
298 		gchar* _tmp1_;
299 		gchar* _tmp2_;
300 		gchar* _tmp3_;
301 		gchar** _tmp4_;
302 		gchar** _tmp5_;
303 		gint _tmp5__length1;
304 		_tmp0_ = g_strdup ("src");
305 		_tmp1_ = g_strdup (src);
306 		_tmp2_ = g_strdup ("alt");
307 		_tmp3_ = g_strdup (caption);
308 		_tmp4_ = g_new0 (gchar*, 4 + 1);
309 		_tmp4_[0] = _tmp0_;
310 		_tmp4_[1] = _tmp1_;
311 		_tmp4_[2] = _tmp2_;
312 		_tmp4_[3] = _tmp3_;
313 		_tmp5_ = _tmp4_;
314 		_tmp5__length1 = 4;
315 		valadoc_markup_writer_simple_tag ((ValadocMarkupWriter*) self, "img", _tmp5_, (gint) 4);
316 		_tmp5_ = (_vala_array_free (_tmp5_, _tmp5__length1, (GDestroyNotify) g_free), NULL);
317 	} else {
318 		gchar* _tmp6_;
319 		gchar* _tmp7_;
320 		gchar* _tmp8_;
321 		gchar* _tmp9_;
322 		gchar* _tmp10_;
323 		gchar* _tmp11_;
324 		gchar** _tmp12_;
325 		gchar** _tmp13_;
326 		gint _tmp13__length1;
327 		_tmp6_ = g_strdup ("src");
328 		_tmp7_ = g_strdup (src);
329 		_tmp8_ = g_strdup ("alt");
330 		_tmp9_ = g_strdup (caption);
331 		_tmp10_ = g_strdup ("class");
332 		_tmp11_ = g_strdup (css_class);
333 		_tmp12_ = g_new0 (gchar*, 6 + 1);
334 		_tmp12_[0] = _tmp6_;
335 		_tmp12_[1] = _tmp7_;
336 		_tmp12_[2] = _tmp8_;
337 		_tmp12_[3] = _tmp9_;
338 		_tmp12_[4] = _tmp10_;
339 		_tmp12_[5] = _tmp11_;
340 		_tmp13_ = _tmp12_;
341 		_tmp13__length1 = 6;
342 		valadoc_markup_writer_simple_tag ((ValadocMarkupWriter*) self, "img", _tmp13_, (gint) 6);
343 		_tmp13_ = (_vala_array_free (_tmp13_, _tmp13__length1, (GDestroyNotify) g_free), NULL);
344 	}
345 	result = self;
346 	return result;
347 }
348 
349 ValadocHtmlMarkupWriter*
valadoc_html_markup_writer_stylesheet_link(ValadocHtmlMarkupWriter * self,const gchar * url)350 valadoc_html_markup_writer_stylesheet_link (ValadocHtmlMarkupWriter* self,
351                                             const gchar* url)
352 {
353 	gchar* _tmp0_;
354 	gchar* _tmp1_;
355 	gchar* _tmp2_;
356 	gchar* _tmp3_;
357 	gchar* _tmp4_;
358 	gchar* _tmp5_;
359 	gchar** _tmp6_;
360 	gchar** _tmp7_;
361 	gint _tmp7__length1;
362 	ValadocHtmlMarkupWriter* result = NULL;
363 	g_return_val_if_fail (self != NULL, NULL);
364 	g_return_val_if_fail (url != NULL, NULL);
365 	_tmp0_ = g_strdup ("href");
366 	_tmp1_ = g_strdup (url);
367 	_tmp2_ = g_strdup ("rel");
368 	_tmp3_ = g_strdup ("stylesheet");
369 	_tmp4_ = g_strdup ("type");
370 	_tmp5_ = g_strdup ("text/css");
371 	_tmp6_ = g_new0 (gchar*, 6 + 1);
372 	_tmp6_[0] = _tmp0_;
373 	_tmp6_[1] = _tmp1_;
374 	_tmp6_[2] = _tmp2_;
375 	_tmp6_[3] = _tmp3_;
376 	_tmp6_[4] = _tmp4_;
377 	_tmp6_[5] = _tmp5_;
378 	_tmp7_ = _tmp6_;
379 	_tmp7__length1 = 6;
380 	valadoc_markup_writer_simple_tag ((ValadocMarkupWriter*) self, "link", _tmp7_, (gint) 6);
381 	_tmp7_ = (_vala_array_free (_tmp7_, _tmp7__length1, (GDestroyNotify) g_free), NULL);
382 	result = self;
383 	return result;
384 }
385 
386 ValadocHtmlMarkupWriter*
valadoc_html_markup_writer_javascript_link(ValadocHtmlMarkupWriter * self,const gchar * url)387 valadoc_html_markup_writer_javascript_link (ValadocHtmlMarkupWriter* self,
388                                             const gchar* url)
389 {
390 	gchar* _tmp0_;
391 	gchar* _tmp1_;
392 	gchar* _tmp2_;
393 	gchar* _tmp3_;
394 	gchar** _tmp4_;
395 	gchar** _tmp5_;
396 	gint _tmp5__length1;
397 	ValadocHtmlMarkupWriter* result = NULL;
398 	g_return_val_if_fail (self != NULL, NULL);
399 	g_return_val_if_fail (url != NULL, NULL);
400 	_tmp0_ = g_strdup ("src");
401 	_tmp1_ = g_strdup (url);
402 	_tmp2_ = g_strdup ("type");
403 	_tmp3_ = g_strdup ("text/javascript");
404 	_tmp4_ = g_new0 (gchar*, 4 + 1);
405 	_tmp4_[0] = _tmp0_;
406 	_tmp4_[1] = _tmp1_;
407 	_tmp4_[2] = _tmp2_;
408 	_tmp4_[3] = _tmp3_;
409 	_tmp5_ = _tmp4_;
410 	_tmp5__length1 = 4;
411 	valadoc_markup_writer_start_tag ((ValadocMarkupWriter*) self, "script", _tmp5_, (gint) 4);
412 	_tmp5_ = (_vala_array_free (_tmp5_, _tmp5__length1, (GDestroyNotify) g_free), NULL);
413 	valadoc_markup_writer_end_tag ((ValadocMarkupWriter*) self, "script");
414 	result = self;
415 	return result;
416 }
417 
418 static gboolean
valadoc_html_markup_writer_real_inline_element(ValadocMarkupWriter * base,const gchar * name)419 valadoc_html_markup_writer_real_inline_element (ValadocMarkupWriter* base,
420                                                 const gchar* name)
421 {
422 	ValadocHtmlMarkupWriter * self;
423 	gboolean _tmp0_ = FALSE;
424 	gboolean _tmp1_ = FALSE;
425 	gboolean _tmp2_ = FALSE;
426 	gboolean _tmp3_ = FALSE;
427 	gboolean _tmp4_ = FALSE;
428 	gboolean _tmp5_ = FALSE;
429 	gboolean _tmp6_ = FALSE;
430 	gboolean _tmp7_ = FALSE;
431 	gboolean _tmp8_ = FALSE;
432 	gboolean _tmp9_ = FALSE;
433 	gboolean _tmp10_ = FALSE;
434 	gboolean _tmp11_ = FALSE;
435 	gboolean _tmp12_ = FALSE;
436 	gboolean _tmp13_ = FALSE;
437 	gboolean _tmp14_ = FALSE;
438 	gboolean _tmp15_ = FALSE;
439 	gboolean _tmp16_ = FALSE;
440 	gboolean _tmp17_ = FALSE;
441 	gboolean _tmp18_ = FALSE;
442 	gboolean _tmp19_ = FALSE;
443 	gboolean result = FALSE;
444 	self = (ValadocHtmlMarkupWriter*) base;
445 	g_return_val_if_fail (name != NULL, FALSE);
446 	if (g_strcmp0 (name, "html") != 0) {
447 		_tmp19_ = g_strcmp0 (name, "head") != 0;
448 	} else {
449 		_tmp19_ = FALSE;
450 	}
451 	if (_tmp19_) {
452 		_tmp18_ = g_strcmp0 (name, "title") != 0;
453 	} else {
454 		_tmp18_ = FALSE;
455 	}
456 	if (_tmp18_) {
457 		_tmp17_ = g_strcmp0 (name, "meta") != 0;
458 	} else {
459 		_tmp17_ = FALSE;
460 	}
461 	if (_tmp17_) {
462 		_tmp16_ = g_strcmp0 (name, "link") != 0;
463 	} else {
464 		_tmp16_ = FALSE;
465 	}
466 	if (_tmp16_) {
467 		_tmp15_ = g_strcmp0 (name, "body") != 0;
468 	} else {
469 		_tmp15_ = FALSE;
470 	}
471 	if (_tmp15_) {
472 		_tmp14_ = g_strcmp0 (name, "div") != 0;
473 	} else {
474 		_tmp14_ = FALSE;
475 	}
476 	if (_tmp14_) {
477 		_tmp13_ = g_strcmp0 (name, "p") != 0;
478 	} else {
479 		_tmp13_ = FALSE;
480 	}
481 	if (_tmp13_) {
482 		_tmp12_ = g_strcmp0 (name, "table") != 0;
483 	} else {
484 		_tmp12_ = FALSE;
485 	}
486 	if (_tmp12_) {
487 		_tmp11_ = g_strcmp0 (name, "tr") != 0;
488 	} else {
489 		_tmp11_ = FALSE;
490 	}
491 	if (_tmp11_) {
492 		_tmp10_ = g_strcmp0 (name, "td") != 0;
493 	} else {
494 		_tmp10_ = FALSE;
495 	}
496 	if (_tmp10_) {
497 		_tmp9_ = g_strcmp0 (name, "ul") != 0;
498 	} else {
499 		_tmp9_ = FALSE;
500 	}
501 	if (_tmp9_) {
502 		_tmp8_ = g_strcmp0 (name, "ol") != 0;
503 	} else {
504 		_tmp8_ = FALSE;
505 	}
506 	if (_tmp8_) {
507 		_tmp7_ = g_strcmp0 (name, "li") != 0;
508 	} else {
509 		_tmp7_ = FALSE;
510 	}
511 	if (_tmp7_) {
512 		_tmp6_ = g_strcmp0 (name, "h1") != 0;
513 	} else {
514 		_tmp6_ = FALSE;
515 	}
516 	if (_tmp6_) {
517 		_tmp5_ = g_strcmp0 (name, "h2") != 0;
518 	} else {
519 		_tmp5_ = FALSE;
520 	}
521 	if (_tmp5_) {
522 		_tmp4_ = g_strcmp0 (name, "h3") != 0;
523 	} else {
524 		_tmp4_ = FALSE;
525 	}
526 	if (_tmp4_) {
527 		_tmp3_ = g_strcmp0 (name, "h4") != 0;
528 	} else {
529 		_tmp3_ = FALSE;
530 	}
531 	if (_tmp3_) {
532 		_tmp2_ = g_strcmp0 (name, "h5") != 0;
533 	} else {
534 		_tmp2_ = FALSE;
535 	}
536 	if (_tmp2_) {
537 		_tmp1_ = g_strcmp0 (name, "hr") != 0;
538 	} else {
539 		_tmp1_ = FALSE;
540 	}
541 	if (_tmp1_) {
542 		_tmp0_ = g_strcmp0 (name, "img") != 0;
543 	} else {
544 		_tmp0_ = FALSE;
545 	}
546 	result = _tmp0_;
547 	return result;
548 }
549 
550 static gboolean
valadoc_html_markup_writer_real_content_inline_element(ValadocMarkupWriter * base,const gchar * name)551 valadoc_html_markup_writer_real_content_inline_element (ValadocMarkupWriter* base,
552                                                         const gchar* name)
553 {
554 	ValadocHtmlMarkupWriter * self;
555 	gboolean _tmp0_ = FALSE;
556 	gboolean _tmp1_ = FALSE;
557 	gboolean _tmp2_ = FALSE;
558 	gboolean _tmp3_ = FALSE;
559 	gboolean _tmp4_ = FALSE;
560 	gboolean _tmp5_ = FALSE;
561 	gboolean _tmp6_ = FALSE;
562 	gboolean _tmp7_ = FALSE;
563 	gboolean _tmp8_ = FALSE;
564 	gboolean _tmp9_ = FALSE;
565 	gboolean _tmp10_ = FALSE;
566 	gboolean _tmp11_ = FALSE;
567 	gboolean _tmp12_ = FALSE;
568 	gboolean _tmp13_ = FALSE;
569 	gboolean _tmp14_ = FALSE;
570 	gboolean result = FALSE;
571 	self = (ValadocHtmlMarkupWriter*) base;
572 	g_return_val_if_fail (name != NULL, FALSE);
573 	if (g_strcmp0 (name, "title") == 0) {
574 		_tmp14_ = TRUE;
575 	} else {
576 		_tmp14_ = g_strcmp0 (name, "meta") == 0;
577 	}
578 	if (_tmp14_) {
579 		_tmp13_ = TRUE;
580 	} else {
581 		_tmp13_ = g_strcmp0 (name, "p") == 0;
582 	}
583 	if (_tmp13_) {
584 		_tmp12_ = TRUE;
585 	} else {
586 		_tmp12_ = g_strcmp0 (name, "a") == 0;
587 	}
588 	if (_tmp12_) {
589 		_tmp11_ = TRUE;
590 	} else {
591 		_tmp11_ = g_strcmp0 (name, "h1") == 0;
592 	}
593 	if (_tmp11_) {
594 		_tmp10_ = TRUE;
595 	} else {
596 		_tmp10_ = g_strcmp0 (name, "h2") == 0;
597 	}
598 	if (_tmp10_) {
599 		_tmp9_ = TRUE;
600 	} else {
601 		_tmp9_ = g_strcmp0 (name, "h3") == 0;
602 	}
603 	if (_tmp9_) {
604 		_tmp8_ = TRUE;
605 	} else {
606 		_tmp8_ = g_strcmp0 (name, "h4") == 0;
607 	}
608 	if (_tmp8_) {
609 		_tmp7_ = TRUE;
610 	} else {
611 		_tmp7_ = g_strcmp0 (name, "h5") == 0;
612 	}
613 	if (_tmp7_) {
614 		_tmp6_ = TRUE;
615 	} else {
616 		_tmp6_ = g_strcmp0 (name, "li") == 0;
617 	}
618 	if (_tmp6_) {
619 		_tmp5_ = TRUE;
620 	} else {
621 		_tmp5_ = g_strcmp0 (name, "span") == 0;
622 	}
623 	if (_tmp5_) {
624 		_tmp4_ = TRUE;
625 	} else {
626 		_tmp4_ = g_strcmp0 (name, "code") == 0;
627 	}
628 	if (_tmp4_) {
629 		_tmp3_ = TRUE;
630 	} else {
631 		_tmp3_ = g_strcmp0 (name, "b") == 0;
632 	}
633 	if (_tmp3_) {
634 		_tmp2_ = TRUE;
635 	} else {
636 		_tmp2_ = g_strcmp0 (name, "i") == 0;
637 	}
638 	if (_tmp2_) {
639 		_tmp1_ = TRUE;
640 	} else {
641 		_tmp1_ = g_strcmp0 (name, "u") == 0;
642 	}
643 	if (_tmp1_) {
644 		_tmp0_ = TRUE;
645 	} else {
646 		_tmp0_ = g_strcmp0 (name, "stoke") == 0;
647 	}
648 	result = _tmp0_;
649 	return result;
650 }
651 
652 static void
valadoc_html_markup_writer_class_init(ValadocHtmlMarkupWriterClass * klass,gpointer klass_data)653 valadoc_html_markup_writer_class_init (ValadocHtmlMarkupWriterClass * klass,
654                                        gpointer klass_data)
655 {
656 	valadoc_html_markup_writer_parent_class = g_type_class_peek_parent (klass);
657 	((ValadocMarkupWriterClass *) klass)->inline_element = (gboolean (*) (ValadocMarkupWriter*, const gchar*)) valadoc_html_markup_writer_real_inline_element;
658 	((ValadocMarkupWriterClass *) klass)->content_inline_element = (gboolean (*) (ValadocMarkupWriter*, const gchar*)) valadoc_html_markup_writer_real_content_inline_element;
659 }
660 
661 static void
valadoc_html_markup_writer_instance_init(ValadocHtmlMarkupWriter * self,gpointer klass)662 valadoc_html_markup_writer_instance_init (ValadocHtmlMarkupWriter * self,
663                                           gpointer klass)
664 {
665 }
666 
667 static GType
valadoc_html_markup_writer_get_type_once(void)668 valadoc_html_markup_writer_get_type_once (void)
669 {
670 	static const GTypeInfo g_define_type_info = { sizeof (ValadocHtmlMarkupWriterClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) valadoc_html_markup_writer_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ValadocHtmlMarkupWriter), 0, (GInstanceInitFunc) valadoc_html_markup_writer_instance_init, NULL };
671 	GType valadoc_html_markup_writer_type_id;
672 	valadoc_html_markup_writer_type_id = g_type_register_static (VALADOC_TYPE_MARKUP_WRITER, "ValadocHtmlMarkupWriter", &g_define_type_info, 0);
673 	return valadoc_html_markup_writer_type_id;
674 }
675 
676 GType
valadoc_html_markup_writer_get_type(void)677 valadoc_html_markup_writer_get_type (void)
678 {
679 	static volatile gsize valadoc_html_markup_writer_type_id__volatile = 0;
680 	if (g_once_init_enter (&valadoc_html_markup_writer_type_id__volatile)) {
681 		GType valadoc_html_markup_writer_type_id;
682 		valadoc_html_markup_writer_type_id = valadoc_html_markup_writer_get_type_once ();
683 		g_once_init_leave (&valadoc_html_markup_writer_type_id__volatile, valadoc_html_markup_writer_type_id);
684 	}
685 	return valadoc_html_markup_writer_type_id__volatile;
686 }
687 
688 static void
_vala_array_destroy(gpointer array,gint array_length,GDestroyNotify destroy_func)689 _vala_array_destroy (gpointer array,
690                      gint array_length,
691                      GDestroyNotify destroy_func)
692 {
693 	if ((array != NULL) && (destroy_func != NULL)) {
694 		gint i;
695 		for (i = 0; i < array_length; i = i + 1) {
696 			if (((gpointer*) array)[i] != NULL) {
697 				destroy_func (((gpointer*) array)[i]);
698 			}
699 		}
700 	}
701 }
702 
703 static void
_vala_array_free(gpointer array,gint array_length,GDestroyNotify destroy_func)704 _vala_array_free (gpointer array,
705                   gint array_length,
706                   GDestroyNotify destroy_func)
707 {
708 	_vala_array_destroy (array, array_length, destroy_func);
709 	g_free (array);
710 }
711 
712