1 /* tagletsince.c generated by valac, the Vala compiler
2  * generated from tagletsince.vala, do not modify */
3 
4 /* tagletsince.vala
5  *
6  * Copyright (C) 2008-2009 Didier Villevalois
7  * Copyright (C) 2008-2012 Florian Brosch
8  *
9  * This library is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU Lesser General Public
11  * License as published by the Free Software Foundation; either
12  * version 2.1 of the License, or (at your option) any later version.
13  *
14  * This library is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17  * Lesser General Public License for more details.
18  *
19  * You should have received a copy of the GNU Lesser General Public
20  * License along with this library; if not, write to the Free Software
21  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
22  *
23  * Author:
24  * 	Didier 'Ptitjes Villevalois <ptitjes@free.fr>
25  */
26 
27 #include "valadoc.h"
28 #include <stdlib.h>
29 #include <string.h>
30 #include <glib.h>
31 #include <glib-object.h>
32 
33 enum  {
34 	VALADOC_TAGLETS_SINCE_0_PROPERTY,
35 	VALADOC_TAGLETS_SINCE_VERSION_PROPERTY,
36 	VALADOC_TAGLETS_SINCE_NUM_PROPERTIES
37 };
38 static GParamSpec* valadoc_taglets_since_properties[VALADOC_TAGLETS_SINCE_NUM_PROPERTIES];
39 #define _g_free0(var) (var = (g_free (var), NULL))
40 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
41 
42 struct _ValadocTagletsSincePrivate {
43 	gchar* _version;
44 };
45 
46 static gint ValadocTagletsSince_private_offset;
47 static gpointer valadoc_taglets_since_parent_class = NULL;
48 static ValadocContentTagletIface * valadoc_taglets_since_valadoc_content_taglet_parent_iface = NULL;
49 static ValadocContentBlockIface * valadoc_taglets_since_valadoc_content_block_parent_iface = NULL;
50 
51 G_GNUC_INTERNAL void valadoc_taglets_since_set_version (ValadocTagletsSince* self,
52                                         const gchar* value);
53 static ValadocRule* valadoc_taglets_since_real_get_parser_rule (ValadocContentTaglet* base,
54                                                          ValadocRule* run_rule);
55 static void __lambda129_ (ValadocTagletsSince* self,
56                    ValadocToken* token,
57                    GError** error);
58 static void ___lambda129__valadoc_token_type_action (ValadocToken* token,
59                                               gpointer self,
60                                               GError** error);
61 static void valadoc_taglets_since_real_check (ValadocContentContentElement* base,
62                                        ValadocApiTree* api_root,
63                                        ValadocApiNode* container,
64                                        const gchar* file_path,
65                                        ValadocErrorReporter* reporter,
66                                        ValadocSettings* settings);
67 static void valadoc_taglets_since_real_accept (ValadocContentContentElement* base,
68                                         ValadocContentContentVisitor* visitor);
69 static gboolean valadoc_taglets_since_real_is_empty (ValadocContentContentElement* base);
70 static ValadocContentContentElement* valadoc_taglets_since_real_copy (ValadocContentContentElement* base,
71                                                                ValadocContentContentElement* new_parent);
72 G_GNUC_INTERNAL void valadoc_content_content_element_set_parent (ValadocContentContentElement* self,
73                                                  ValadocContentContentElement* value);
74 static void valadoc_taglets_since_finalize (GObject * obj);
75 static GType valadoc_taglets_since_get_type_once (void);
76 static void _vala_valadoc_taglets_since_get_property (GObject * object,
77                                                guint property_id,
78                                                GValue * value,
79                                                GParamSpec * pspec);
80 static void _vala_valadoc_taglets_since_set_property (GObject * object,
81                                                guint property_id,
82                                                const GValue * value,
83                                                GParamSpec * pspec);
84 static void _vala_array_destroy (gpointer array,
85                           gint array_length,
86                           GDestroyNotify destroy_func);
87 static void _vala_array_free (gpointer array,
88                        gint array_length,
89                        GDestroyNotify destroy_func);
90 
91 static inline gpointer
valadoc_taglets_since_get_instance_private(ValadocTagletsSince * self)92 valadoc_taglets_since_get_instance_private (ValadocTagletsSince* self)
93 {
94 	return G_STRUCT_MEMBER_P (self, ValadocTagletsSince_private_offset);
95 }
96 
97 const gchar*
valadoc_taglets_since_get_version(ValadocTagletsSince * self)98 valadoc_taglets_since_get_version (ValadocTagletsSince* self)
99 {
100 	const gchar* result;
101 	const gchar* _tmp0_;
102 	g_return_val_if_fail (self != NULL, NULL);
103 	_tmp0_ = self->priv->_version;
104 	result = _tmp0_;
105 	return result;
106 }
107 
108 G_GNUC_INTERNAL void
valadoc_taglets_since_set_version(ValadocTagletsSince * self,const gchar * value)109 valadoc_taglets_since_set_version (ValadocTagletsSince* self,
110                                    const gchar* value)
111 {
112 	gchar* old_value;
113 	g_return_if_fail (self != NULL);
114 	old_value = valadoc_taglets_since_get_version (self);
115 	if (g_strcmp0 (value, old_value) != 0) {
116 		gchar* _tmp0_;
117 		_tmp0_ = g_strdup (value);
118 		_g_free0 (self->priv->_version);
119 		self->priv->_version = _tmp0_;
120 		g_object_notify_by_pspec ((GObject *) self, valadoc_taglets_since_properties[VALADOC_TAGLETS_SINCE_VERSION_PROPERTY]);
121 	}
122 }
123 
124 static gpointer
_g_object_ref0(gpointer self)125 _g_object_ref0 (gpointer self)
126 {
127 	return self ? g_object_ref (self) : NULL;
128 }
129 
130 static void
__lambda129_(ValadocTagletsSince * self,ValadocToken * token,GError ** error)131 __lambda129_ (ValadocTagletsSince* self,
132               ValadocToken* token,
133               GError** error)
134 {
135 	const gchar* _tmp0_;
136 	g_return_if_fail (token != NULL);
137 	_tmp0_ = valadoc_token_to_string (token);
138 	valadoc_taglets_since_set_version (self, _tmp0_);
139 }
140 
141 static void
___lambda129__valadoc_token_type_action(ValadocToken * token,gpointer self,GError ** error)142 ___lambda129__valadoc_token_type_action (ValadocToken* token,
143                                          gpointer self,
144                                          GError** error)
145 {
146 	__lambda129_ ((ValadocTagletsSince*) self, token, error);
147 }
148 
149 static ValadocRule*
valadoc_taglets_since_real_get_parser_rule(ValadocContentTaglet * base,ValadocRule * run_rule)150 valadoc_taglets_since_real_get_parser_rule (ValadocContentTaglet* base,
151                                             ValadocRule* run_rule)
152 {
153 	ValadocTagletsSince * self;
154 	ValadocRule* optional_spaces = NULL;
155 	ValadocTokenType* _tmp0_;
156 	GObject* _tmp1_;
157 	GObject** _tmp2_;
158 	GObject** _tmp3_;
159 	gint _tmp3__length1;
160 	ValadocRule* _tmp4_;
161 	GObject** _tmp5_;
162 	GObject** _tmp6_;
163 	gint _tmp6__length1;
164 	ValadocRule* _tmp7_;
165 	ValadocRule* _tmp8_;
166 	GObject* _tmp9_;
167 	ValadocTokenType* _tmp10_;
168 	ValadocTokenType* _tmp11_;
169 	ValadocTokenType* _tmp12_;
170 	GObject* _tmp13_;
171 	GObject** _tmp14_;
172 	GObject** _tmp15_;
173 	gint _tmp15__length1;
174 	ValadocRule* _tmp16_;
175 	ValadocRule* _tmp17_;
176 	ValadocRule* result = NULL;
177 	self = (ValadocTagletsSince*) base;
178 	g_return_val_if_fail (run_rule != NULL, NULL);
179 	_tmp0_ = valadoc_token_type_SPACE;
180 	_tmp1_ = _g_object_ref0 ((GObject*) _tmp0_);
181 	_tmp2_ = g_new0 (GObject*, 1 + 1);
182 	_tmp2_[0] = _tmp1_;
183 	_tmp3_ = _tmp2_;
184 	_tmp3__length1 = 1;
185 	_tmp4_ = valadoc_rule_many (_tmp3_, (gint) 1);
186 	_tmp5_ = g_new0 (GObject*, 1 + 1);
187 	_tmp5_[0] = (GObject*) _tmp4_;
188 	_tmp6_ = _tmp5_;
189 	_tmp6__length1 = 1;
190 	_tmp7_ = valadoc_rule_option (_tmp6_, (gint) 1);
191 	_tmp8_ = _tmp7_;
192 	_tmp6_ = (_vala_array_free (_tmp6_, _tmp6__length1, (GDestroyNotify) g_object_unref), NULL);
193 	_tmp3_ = (_vala_array_free (_tmp3_, _tmp3__length1, (GDestroyNotify) g_object_unref), NULL);
194 	optional_spaces = _tmp8_;
195 	_tmp9_ = _g_object_ref0 ((GObject*) optional_spaces);
196 	_tmp10_ = valadoc_token_type_any_word ();
197 	_tmp11_ = _tmp10_;
198 	_tmp12_ = valadoc_token_type_action (_tmp11_, ___lambda129__valadoc_token_type_action, self);
199 	_tmp13_ = _g_object_ref0 ((GObject*) optional_spaces);
200 	_tmp14_ = g_new0 (GObject*, 3 + 1);
201 	_tmp14_[0] = _tmp9_;
202 	_tmp14_[1] = (GObject*) _tmp12_;
203 	_tmp14_[2] = _tmp13_;
204 	_tmp15_ = _tmp14_;
205 	_tmp15__length1 = 3;
206 	_tmp16_ = valadoc_rule_seq (_tmp15_, (gint) 3);
207 	_tmp17_ = _tmp16_;
208 	_tmp15_ = (_vala_array_free (_tmp15_, _tmp15__length1, (GDestroyNotify) g_object_unref), NULL);
209 	_g_object_unref0 (_tmp11_);
210 	result = _tmp17_;
211 	_g_object_unref0 (optional_spaces);
212 	return result;
213 }
214 
215 static void
valadoc_taglets_since_real_check(ValadocContentContentElement * base,ValadocApiTree * api_root,ValadocApiNode * container,const gchar * file_path,ValadocErrorReporter * reporter,ValadocSettings * settings)216 valadoc_taglets_since_real_check (ValadocContentContentElement* base,
217                                   ValadocApiTree* api_root,
218                                   ValadocApiNode* container,
219                                   const gchar* file_path,
220                                   ValadocErrorReporter* reporter,
221                                   ValadocSettings* settings)
222 {
223 	ValadocTagletsSince * self;
224 	self = (ValadocTagletsSince*) base;
225 	g_return_if_fail (api_root != NULL);
226 	g_return_if_fail (container != NULL);
227 	g_return_if_fail (file_path != NULL);
228 	g_return_if_fail (reporter != NULL);
229 	g_return_if_fail (settings != NULL);
230 }
231 
232 static void
valadoc_taglets_since_real_accept(ValadocContentContentElement * base,ValadocContentContentVisitor * visitor)233 valadoc_taglets_since_real_accept (ValadocContentContentElement* base,
234                                    ValadocContentContentVisitor* visitor)
235 {
236 	ValadocTagletsSince * self;
237 	self = (ValadocTagletsSince*) base;
238 	g_return_if_fail (visitor != NULL);
239 	valadoc_content_content_visitor_visit_taglet (visitor, (ValadocContentTaglet*) self);
240 }
241 
242 static gboolean
valadoc_taglets_since_real_is_empty(ValadocContentContentElement * base)243 valadoc_taglets_since_real_is_empty (ValadocContentContentElement* base)
244 {
245 	ValadocTagletsSince * self;
246 	gboolean result = FALSE;
247 	self = (ValadocTagletsSince*) base;
248 	result = FALSE;
249 	return result;
250 }
251 
252 static ValadocContentContentElement*
valadoc_taglets_since_real_copy(ValadocContentContentElement * base,ValadocContentContentElement * new_parent)253 valadoc_taglets_since_real_copy (ValadocContentContentElement* base,
254                                  ValadocContentContentElement* new_parent)
255 {
256 	ValadocTagletsSince * self;
257 	ValadocTagletsSince* since = NULL;
258 	ValadocTagletsSince* _tmp0_;
259 	const gchar* _tmp1_;
260 	ValadocContentContentElement* result = NULL;
261 	self = (ValadocTagletsSince*) base;
262 	_tmp0_ = valadoc_taglets_since_new ();
263 	since = _tmp0_;
264 	valadoc_content_content_element_set_parent ((ValadocContentContentElement*) since, new_parent);
265 	_tmp1_ = self->priv->_version;
266 	valadoc_taglets_since_set_version (since, _tmp1_);
267 	result = (ValadocContentContentElement*) since;
268 	return result;
269 }
270 
271 ValadocTagletsSince*
valadoc_taglets_since_construct(GType object_type)272 valadoc_taglets_since_construct (GType object_type)
273 {
274 	ValadocTagletsSince * self = NULL;
275 	self = (ValadocTagletsSince*) valadoc_content_content_element_construct (object_type);
276 	return self;
277 }
278 
279 ValadocTagletsSince*
valadoc_taglets_since_new(void)280 valadoc_taglets_since_new (void)
281 {
282 	return valadoc_taglets_since_construct (VALADOC_TAGLETS_TYPE_SINCE);
283 }
284 
285 static void
valadoc_taglets_since_class_init(ValadocTagletsSinceClass * klass,gpointer klass_data)286 valadoc_taglets_since_class_init (ValadocTagletsSinceClass * klass,
287                                   gpointer klass_data)
288 {
289 	valadoc_taglets_since_parent_class = g_type_class_peek_parent (klass);
290 	g_type_class_adjust_private_offset (klass, &ValadocTagletsSince_private_offset);
291 	((ValadocContentContentElementClass *) klass)->check = (void (*) (ValadocContentContentElement*, ValadocApiTree*, ValadocApiNode*, const gchar*, ValadocErrorReporter*, ValadocSettings*)) valadoc_taglets_since_real_check;
292 	((ValadocContentContentElementClass *) klass)->accept = (void (*) (ValadocContentContentElement*, ValadocContentContentVisitor*)) valadoc_taglets_since_real_accept;
293 	((ValadocContentContentElementClass *) klass)->is_empty = (gboolean (*) (ValadocContentContentElement*)) valadoc_taglets_since_real_is_empty;
294 	((ValadocContentContentElementClass *) klass)->copy = (ValadocContentContentElement* (*) (ValadocContentContentElement*, ValadocContentContentElement*)) valadoc_taglets_since_real_copy;
295 	G_OBJECT_CLASS (klass)->get_property = _vala_valadoc_taglets_since_get_property;
296 	G_OBJECT_CLASS (klass)->set_property = _vala_valadoc_taglets_since_set_property;
297 	G_OBJECT_CLASS (klass)->finalize = valadoc_taglets_since_finalize;
298 	g_object_class_install_property (G_OBJECT_CLASS (klass), VALADOC_TAGLETS_SINCE_VERSION_PROPERTY, valadoc_taglets_since_properties[VALADOC_TAGLETS_SINCE_VERSION_PROPERTY] = g_param_spec_string ("version", "version", "version", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
299 }
300 
301 static void
valadoc_taglets_since_valadoc_content_taglet_interface_init(ValadocContentTagletIface * iface,gpointer iface_data)302 valadoc_taglets_since_valadoc_content_taglet_interface_init (ValadocContentTagletIface * iface,
303                                                              gpointer iface_data)
304 {
305 	valadoc_taglets_since_valadoc_content_taglet_parent_iface = g_type_interface_peek_parent (iface);
306 	iface->get_parser_rule = (ValadocRule* (*) (ValadocContentTaglet*, ValadocRule*)) valadoc_taglets_since_real_get_parser_rule;
307 }
308 
309 static void
valadoc_taglets_since_valadoc_content_block_interface_init(ValadocContentBlockIface * iface,gpointer iface_data)310 valadoc_taglets_since_valadoc_content_block_interface_init (ValadocContentBlockIface * iface,
311                                                             gpointer iface_data)
312 {
313 	valadoc_taglets_since_valadoc_content_block_parent_iface = g_type_interface_peek_parent (iface);
314 }
315 
316 static void
valadoc_taglets_since_instance_init(ValadocTagletsSince * self,gpointer klass)317 valadoc_taglets_since_instance_init (ValadocTagletsSince * self,
318                                      gpointer klass)
319 {
320 	self->priv = valadoc_taglets_since_get_instance_private (self);
321 }
322 
323 static void
valadoc_taglets_since_finalize(GObject * obj)324 valadoc_taglets_since_finalize (GObject * obj)
325 {
326 	ValadocTagletsSince * self;
327 	self = G_TYPE_CHECK_INSTANCE_CAST (obj, VALADOC_TAGLETS_TYPE_SINCE, ValadocTagletsSince);
328 	_g_free0 (self->priv->_version);
329 	G_OBJECT_CLASS (valadoc_taglets_since_parent_class)->finalize (obj);
330 }
331 
332 static GType
valadoc_taglets_since_get_type_once(void)333 valadoc_taglets_since_get_type_once (void)
334 {
335 	static const GTypeInfo g_define_type_info = { sizeof (ValadocTagletsSinceClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) valadoc_taglets_since_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ValadocTagletsSince), 0, (GInstanceInitFunc) valadoc_taglets_since_instance_init, NULL };
336 	static const GInterfaceInfo valadoc_content_taglet_info = { (GInterfaceInitFunc) valadoc_taglets_since_valadoc_content_taglet_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
337 	static const GInterfaceInfo valadoc_content_block_info = { (GInterfaceInitFunc) valadoc_taglets_since_valadoc_content_block_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
338 	GType valadoc_taglets_since_type_id;
339 	valadoc_taglets_since_type_id = g_type_register_static (VALADOC_CONTENT_TYPE_CONTENT_ELEMENT, "ValadocTagletsSince", &g_define_type_info, 0);
340 	g_type_add_interface_static (valadoc_taglets_since_type_id, VALADOC_CONTENT_TYPE_TAGLET, &valadoc_content_taglet_info);
341 	g_type_add_interface_static (valadoc_taglets_since_type_id, VALADOC_CONTENT_TYPE_BLOCK, &valadoc_content_block_info);
342 	ValadocTagletsSince_private_offset = g_type_add_instance_private (valadoc_taglets_since_type_id, sizeof (ValadocTagletsSincePrivate));
343 	return valadoc_taglets_since_type_id;
344 }
345 
346 GType
valadoc_taglets_since_get_type(void)347 valadoc_taglets_since_get_type (void)
348 {
349 	static volatile gsize valadoc_taglets_since_type_id__volatile = 0;
350 	if (g_once_init_enter (&valadoc_taglets_since_type_id__volatile)) {
351 		GType valadoc_taglets_since_type_id;
352 		valadoc_taglets_since_type_id = valadoc_taglets_since_get_type_once ();
353 		g_once_init_leave (&valadoc_taglets_since_type_id__volatile, valadoc_taglets_since_type_id);
354 	}
355 	return valadoc_taglets_since_type_id__volatile;
356 }
357 
358 static void
_vala_valadoc_taglets_since_get_property(GObject * object,guint property_id,GValue * value,GParamSpec * pspec)359 _vala_valadoc_taglets_since_get_property (GObject * object,
360                                           guint property_id,
361                                           GValue * value,
362                                           GParamSpec * pspec)
363 {
364 	ValadocTagletsSince * self;
365 	self = G_TYPE_CHECK_INSTANCE_CAST (object, VALADOC_TAGLETS_TYPE_SINCE, ValadocTagletsSince);
366 	switch (property_id) {
367 		case VALADOC_TAGLETS_SINCE_VERSION_PROPERTY:
368 		g_value_set_string (value, valadoc_taglets_since_get_version (self));
369 		break;
370 		default:
371 		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
372 		break;
373 	}
374 }
375 
376 static void
_vala_valadoc_taglets_since_set_property(GObject * object,guint property_id,const GValue * value,GParamSpec * pspec)377 _vala_valadoc_taglets_since_set_property (GObject * object,
378                                           guint property_id,
379                                           const GValue * value,
380                                           GParamSpec * pspec)
381 {
382 	ValadocTagletsSince * self;
383 	self = G_TYPE_CHECK_INSTANCE_CAST (object, VALADOC_TAGLETS_TYPE_SINCE, ValadocTagletsSince);
384 	switch (property_id) {
385 		case VALADOC_TAGLETS_SINCE_VERSION_PROPERTY:
386 		valadoc_taglets_since_set_version (self, g_value_get_string (value));
387 		break;
388 		default:
389 		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
390 		break;
391 	}
392 }
393 
394 static void
_vala_array_destroy(gpointer array,gint array_length,GDestroyNotify destroy_func)395 _vala_array_destroy (gpointer array,
396                      gint array_length,
397                      GDestroyNotify destroy_func)
398 {
399 	if ((array != NULL) && (destroy_func != NULL)) {
400 		gint i;
401 		for (i = 0; i < array_length; i = i + 1) {
402 			if (((gpointer*) array)[i] != NULL) {
403 				destroy_func (((gpointer*) array)[i]);
404 			}
405 		}
406 	}
407 }
408 
409 static void
_vala_array_free(gpointer array,gint array_length,GDestroyNotify destroy_func)410 _vala_array_free (gpointer array,
411                   gint array_length,
412                   GDestroyNotify destroy_func)
413 {
414 	_vala_array_destroy (array, array_length, destroy_func);
415 	g_free (array);
416 }
417 
418