~ubuntu-branches/ubuntu/raring/vala-0.16/raring

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