1
by Sebastien Bacher
Import upstream version 0.15.0 |
1 |
/* valactype.c generated by valac, the Vala compiler
|
2 |
* generated from valactype.vala, do not modify */
|
|
3 |
||
4 |
/* valactype.vala
|
|
5 |
*
|
|
6 |
* Copyright (C) 2009 Mark Lee
|
|
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 |
* Mark Lee <marklee@src.gnome.org>
|
|
24 |
*/
|
|
25 |
||
26 |
#include <glib.h> |
|
27 |
#include <glib-object.h> |
|
28 |
#include <vala.h> |
|
29 |
#include <stdlib.h> |
|
30 |
#include <string.h> |
|
31 |
||
32 |
||
33 |
#define VALA_TYPE_CTYPE (vala_ctype_get_type ())
|
|
34 |
#define VALA_CTYPE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_CTYPE, ValaCType))
|
|
35 |
#define VALA_CTYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_CTYPE, ValaCTypeClass))
|
|
36 |
#define VALA_IS_CTYPE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VALA_TYPE_CTYPE))
|
|
37 |
#define VALA_IS_CTYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VALA_TYPE_CTYPE))
|
|
38 |
#define VALA_CTYPE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VALA_TYPE_CTYPE, ValaCTypeClass))
|
|
39 |
||
40 |
typedef struct _ValaCType ValaCType; |
|
41 |
typedef struct _ValaCTypeClass ValaCTypeClass; |
|
42 |
typedef struct _ValaCTypePrivate ValaCTypePrivate; |
|
43 |
#define _g_free0(var) (var = (g_free (var), NULL))
|
|
44 |
||
45 |
struct _ValaCType { |
|
46 |
ValaDataType parent_instance; |
|
47 |
ValaCTypePrivate * priv; |
|
48 |
};
|
|
49 |
||
50 |
struct _ValaCTypeClass { |
|
51 |
ValaDataTypeClass parent_class; |
|
52 |
};
|
|
53 |
||
54 |
struct _ValaCTypePrivate { |
|
55 |
gchar* _ctype_name; |
|
56 |
};
|
|
57 |
||
58 |
||
59 |
static gpointer vala_ctype_parent_class = NULL; |
|
60 |
||
61 |
GType vala_ctype_get_type (void) G_GNUC_CONST; |
|
62 |
#define VALA_CTYPE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), VALA_TYPE_CTYPE, ValaCTypePrivate))
|
|
63 |
enum { |
|
64 |
VALA_CTYPE_DUMMY_PROPERTY
|
|
65 |
};
|
|
66 |
ValaCType* vala_ctype_new (const gchar* ctype_name); |
|
67 |
ValaCType* vala_ctype_construct (GType object_type, const gchar* ctype_name); |
|
68 |
void vala_ctype_set_ctype_name (ValaCType* self, const gchar* value); |
|
69 |
static ValaDataType* vala_ctype_real_copy (ValaDataType* base); |
|
70 |
const gchar* vala_ctype_get_ctype_name (ValaCType* self); |
|
71 |
static void vala_ctype_finalize (ValaCodeNode* obj); |
|
72 |
||
73 |
||
74 |
ValaCType* vala_ctype_construct (GType object_type, const gchar* ctype_name) { |
|
75 |
ValaCType* self = NULL; |
|
76 |
const gchar* _tmp0_; |
|
77 |
g_return_val_if_fail (ctype_name != NULL, NULL); |
|
78 |
self = (ValaCType*) vala_data_type_construct (object_type); |
|
79 |
_tmp0_ = ctype_name; |
|
80 |
vala_ctype_set_ctype_name (self, _tmp0_); |
|
81 |
return self; |
|
82 |
}
|
|
83 |
||
84 |
||
85 |
ValaCType* vala_ctype_new (const gchar* ctype_name) { |
|
86 |
return vala_ctype_construct (VALA_TYPE_CTYPE, ctype_name); |
|
87 |
}
|
|
88 |
||
89 |
||
90 |
static ValaDataType* vala_ctype_real_copy (ValaDataType* base) { |
|
91 |
ValaCType * self; |
|
92 |
ValaDataType* result = NULL; |
|
93 |
const gchar* _tmp0_; |
|
94 |
ValaCType* _tmp1_; |
|
95 |
self = (ValaCType*) base; |
|
96 |
_tmp0_ = self->priv->_ctype_name; |
|
97 |
_tmp1_ = vala_ctype_new (_tmp0_); |
|
98 |
result = (ValaDataType*) _tmp1_; |
|
99 |
return result; |
|
100 |
}
|
|
101 |
||
102 |
||
103 |
const gchar* vala_ctype_get_ctype_name (ValaCType* self) { |
|
104 |
const gchar* result; |
|
105 |
const gchar* _tmp0_; |
|
106 |
g_return_val_if_fail (self != NULL, NULL); |
|
107 |
_tmp0_ = self->priv->_ctype_name; |
|
108 |
result = _tmp0_; |
|
109 |
return result; |
|
110 |
}
|
|
111 |
||
112 |
||
113 |
void vala_ctype_set_ctype_name (ValaCType* self, const gchar* value) { |
|
114 |
const gchar* _tmp0_; |
|
115 |
gchar* _tmp1_; |
|
116 |
g_return_if_fail (self != NULL); |
|
117 |
_tmp0_ = value; |
|
118 |
_tmp1_ = g_strdup (_tmp0_); |
|
119 |
_g_free0 (self->priv->_ctype_name); |
|
120 |
self->priv->_ctype_name = _tmp1_; |
|
121 |
}
|
|
122 |
||
123 |
||
124 |
static void vala_ctype_class_init (ValaCTypeClass * klass) { |
|
125 |
vala_ctype_parent_class = g_type_class_peek_parent (klass); |
|
126 |
VALA_CODE_NODE_CLASS (klass)->finalize = vala_ctype_finalize; |
|
127 |
g_type_class_add_private (klass, sizeof (ValaCTypePrivate)); |
|
128 |
VALA_DATA_TYPE_CLASS (klass)->copy = vala_ctype_real_copy; |
|
129 |
}
|
|
130 |
||
131 |
||
132 |
static void vala_ctype_instance_init (ValaCType * self) { |
|
133 |
self->priv = VALA_CTYPE_GET_PRIVATE (self); |
|
134 |
}
|
|
135 |
||
136 |
||
137 |
static void vala_ctype_finalize (ValaCodeNode* obj) { |
|
138 |
ValaCType * self; |
|
139 |
self = VALA_CTYPE (obj); |
|
140 |
_g_free0 (self->priv->_ctype_name); |
|
141 |
VALA_CODE_NODE_CLASS (vala_ctype_parent_class)->finalize (obj); |
|
142 |
}
|
|
143 |
||
144 |
||
145 |
/**
|
|
146 |
* A C type, used only for code generation purposes.
|
|
147 |
*/
|
|
148 |
GType vala_ctype_get_type (void) { |
|
149 |
static volatile gsize vala_ctype_type_id__volatile = 0; |
|
150 |
if (g_once_init_enter (&vala_ctype_type_id__volatile)) { |
|
151 |
static const GTypeInfo g_define_type_info = { sizeof (ValaCTypeClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) vala_ctype_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ValaCType), 0, (GInstanceInitFunc) vala_ctype_instance_init, NULL }; |
|
152 |
GType vala_ctype_type_id; |
|
153 |
vala_ctype_type_id = g_type_register_static (VALA_TYPE_DATA_TYPE, "ValaCType", &g_define_type_info, 0); |
|
154 |
g_once_init_leave (&vala_ctype_type_id__volatile, vala_ctype_type_id); |
|
155 |
}
|
|
156 |
return vala_ctype_type_id__volatile; |
|
157 |
}
|
|
158 |
||
159 |
||
160 |