1 /* scanner.c generated by valac, the Vala compiler
2  * generated from scanner.vala, do not modify */
3 
4 /* scanner.vala
5  *
6  * Copyright (C) 2008-2009 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 <glib.h>
28 #include <stdlib.h>
29 #include <string.h>
30 
31 static GType valadoc_scanner_get_type_once (void);
32 
33 void
valadoc_scanner_set_parser(ValadocScanner * self,ValadocParser * parser)34 valadoc_scanner_set_parser (ValadocScanner* self,
35                             ValadocParser* parser)
36 {
37 	g_return_if_fail (self != NULL);
38 	VALADOC_SCANNER_GET_INTERFACE (self)->set_parser (self, parser);
39 }
40 
41 void
valadoc_scanner_reset(ValadocScanner * self)42 valadoc_scanner_reset (ValadocScanner* self)
43 {
44 	g_return_if_fail (self != NULL);
45 	VALADOC_SCANNER_GET_INTERFACE (self)->reset (self);
46 }
47 
48 void
valadoc_scanner_scan(ValadocScanner * self,const gchar * content,GError ** error)49 valadoc_scanner_scan (ValadocScanner* self,
50                       const gchar* content,
51                       GError** error)
52 {
53 	g_return_if_fail (self != NULL);
54 	VALADOC_SCANNER_GET_INTERFACE (self)->scan (self, content, error);
55 }
56 
57 void
valadoc_scanner_end(ValadocScanner * self,GError ** error)58 valadoc_scanner_end (ValadocScanner* self,
59                      GError** error)
60 {
61 	g_return_if_fail (self != NULL);
62 	VALADOC_SCANNER_GET_INTERFACE (self)->end (self, error);
63 }
64 
65 void
valadoc_scanner_stop(ValadocScanner * self)66 valadoc_scanner_stop (ValadocScanner* self)
67 {
68 	g_return_if_fail (self != NULL);
69 	VALADOC_SCANNER_GET_INTERFACE (self)->stop (self);
70 }
71 
72 gchar*
valadoc_scanner_get_line_content(ValadocScanner * self)73 valadoc_scanner_get_line_content (ValadocScanner* self)
74 {
75 	g_return_val_if_fail (self != NULL, NULL);
76 	return VALADOC_SCANNER_GET_INTERFACE (self)->get_line_content (self);
77 }
78 
79 static void
valadoc_scanner_default_init(ValadocScannerIface * iface,gpointer iface_data)80 valadoc_scanner_default_init (ValadocScannerIface * iface,
81                               gpointer iface_data)
82 {
83 }
84 
85 static GType
valadoc_scanner_get_type_once(void)86 valadoc_scanner_get_type_once (void)
87 {
88 	static const GTypeInfo g_define_type_info = { sizeof (ValadocScannerIface), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) valadoc_scanner_default_init, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
89 	GType valadoc_scanner_type_id;
90 	valadoc_scanner_type_id = g_type_register_static (G_TYPE_INTERFACE, "ValadocScanner", &g_define_type_info, 0);
91 	g_type_interface_add_prerequisite (valadoc_scanner_type_id, G_TYPE_OBJECT);
92 	return valadoc_scanner_type_id;
93 }
94 
95 GType
valadoc_scanner_get_type(void)96 valadoc_scanner_get_type (void)
97 {
98 	static volatile gsize valadoc_scanner_type_id__volatile = 0;
99 	if (g_once_init_enter (&valadoc_scanner_type_id__volatile)) {
100 		GType valadoc_scanner_type_id;
101 		valadoc_scanner_type_id = valadoc_scanner_get_type_once ();
102 		g_once_init_leave (&valadoc_scanner_type_id__volatile, valadoc_scanner_type_id);
103 	}
104 	return valadoc_scanner_type_id__volatile;
105 }
106 
107