1 /* valavartype.c generated by valac, the Vala compiler
2 * generated from valavartype.vala, do not modify */
3
4 /* valavartype.vala
5 *
6 * Copyright (C) 2019 Rico Tzschichholz
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 * Rico Tzschichholz <ricotz@ubuntu.com>
24 */
25
26 #include "vala.h"
27 #include <stdlib.h>
28 #include <string.h>
29 #include <glib.h>
30
31 static gpointer vala_var_type_parent_class = NULL;
32
33 static gchar* vala_var_type_real_to_qualified_string (ValaDataType* base,
34 ValaScope* scope);
35 static ValaDataType* vala_var_type_real_copy (ValaDataType* base);
36 static GType vala_var_type_get_type_once (void);
37
38 ValaVarType*
vala_var_type_construct(GType object_type,gboolean value_owned)39 vala_var_type_construct (GType object_type,
40 gboolean value_owned)
41 {
42 ValaVarType* self = NULL;
43 self = (ValaVarType*) vala_data_type_construct (object_type);
44 vala_data_type_set_value_owned ((ValaDataType*) self, value_owned);
45 return self;
46 }
47
48 ValaVarType*
vala_var_type_new(gboolean value_owned)49 vala_var_type_new (gboolean value_owned)
50 {
51 return vala_var_type_construct (VALA_TYPE_VAR_TYPE, value_owned);
52 }
53
54 static gchar*
vala_var_type_real_to_qualified_string(ValaDataType * base,ValaScope * scope)55 vala_var_type_real_to_qualified_string (ValaDataType* base,
56 ValaScope* scope)
57 {
58 ValaVarType * self;
59 gchar* _tmp0_;
60 gchar* result = NULL;
61 self = (ValaVarType*) base;
62 _tmp0_ = g_strdup ("var");
63 result = _tmp0_;
64 return result;
65 }
66
67 static ValaDataType*
vala_var_type_real_copy(ValaDataType * base)68 vala_var_type_real_copy (ValaDataType* base)
69 {
70 ValaVarType * self;
71 gboolean _tmp0_;
72 gboolean _tmp1_;
73 ValaVarType* _tmp2_;
74 ValaDataType* result = NULL;
75 self = (ValaVarType*) base;
76 _tmp0_ = vala_data_type_get_value_owned ((ValaDataType*) self);
77 _tmp1_ = _tmp0_;
78 _tmp2_ = vala_var_type_new (_tmp1_);
79 result = (ValaDataType*) _tmp2_;
80 return result;
81 }
82
83 static void
vala_var_type_class_init(ValaVarTypeClass * klass,gpointer klass_data)84 vala_var_type_class_init (ValaVarTypeClass * klass,
85 gpointer klass_data)
86 {
87 vala_var_type_parent_class = g_type_class_peek_parent (klass);
88 ((ValaDataTypeClass *) klass)->to_qualified_string = (gchar* (*) (ValaDataType*, ValaScope*)) vala_var_type_real_to_qualified_string;
89 ((ValaDataTypeClass *) klass)->copy = (ValaDataType* (*) (ValaDataType*)) vala_var_type_real_copy;
90 }
91
92 static void
vala_var_type_instance_init(ValaVarType * self,gpointer klass)93 vala_var_type_instance_init (ValaVarType * self,
94 gpointer klass)
95 {
96 }
97
98 /**
99 * A to be inferred data type.
100 */
101 static GType
vala_var_type_get_type_once(void)102 vala_var_type_get_type_once (void)
103 {
104 static const GTypeInfo g_define_type_info = { sizeof (ValaVarTypeClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) vala_var_type_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ValaVarType), 0, (GInstanceInitFunc) vala_var_type_instance_init, NULL };
105 GType vala_var_type_type_id;
106 vala_var_type_type_id = g_type_register_static (VALA_TYPE_DATA_TYPE, "ValaVarType", &g_define_type_info, 0);
107 return vala_var_type_type_id;
108 }
109
110 GType
vala_var_type_get_type(void)111 vala_var_type_get_type (void)
112 {
113 static volatile gsize vala_var_type_type_id__volatile = 0;
114 if (g_once_init_enter (&vala_var_type_type_id__volatile)) {
115 GType vala_var_type_type_id;
116 vala_var_type_type_id = vala_var_type_get_type_once ();
117 g_once_init_leave (&vala_var_type_type_id__volatile, vala_var_type_type_id);
118 }
119 return vala_var_type_type_id__volatile;
120 }
121
122