File: valaccodeexpressionbinding.c

package info (click to toggle)
vala 0.3.4-1
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 13,756 kB
  • ctags: 12,353
  • sloc: ansic: 116,516; sh: 9,897; yacc: 1,218; makefile: 837; xml: 657; lex: 285
file content (120 lines) | stat: -rw-r--r-- 5,065 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
/* valaccodeexpressionbinding.vala
 *
 * Copyright (C) 2007  Jürg Billeter
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.

 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.

 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
 *
 * Author:
 * 	Jürg Billeter <j@bitron.ch>
 */

#include <gobject/valaccodeexpressionbinding.h>




struct _ValaCCodeExpressionBindingPrivate {
	ValaCCodeExpression* _codenode;
};

#define VALA_CCODE_EXPRESSION_BINDING_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), VALA_TYPE_CCODE_EXPRESSION_BINDING, ValaCCodeExpressionBindingPrivate))
enum  {
	VALA_CCODE_EXPRESSION_BINDING_DUMMY_PROPERTY,
	VALA_CCODE_EXPRESSION_BINDING_CODENODE
};
static gpointer vala_ccode_expression_binding_parent_class = NULL;
static void vala_ccode_expression_binding_dispose (GObject * obj);



ValaCCodeExpression* vala_ccode_expression_binding_get_codenode (ValaCCodeExpressionBinding* self) {
	g_return_val_if_fail (VALA_IS_CCODE_EXPRESSION_BINDING (self), NULL);
	return self->priv->_codenode;
}


void vala_ccode_expression_binding_set_codenode (ValaCCodeExpressionBinding* self, ValaCCodeExpression* value) {
	ValaCCodeExpression* _tmp2;
	ValaCCodeExpression* _tmp1;
	g_return_if_fail (VALA_IS_CCODE_EXPRESSION_BINDING (self));
	_tmp2 = NULL;
	_tmp1 = NULL;
	self->priv->_codenode = (_tmp2 = (_tmp1 = value, (_tmp1 == NULL ? NULL : g_object_ref (_tmp1))), (self->priv->_codenode == NULL ? NULL : (self->priv->_codenode = (g_object_unref (self->priv->_codenode), NULL))), _tmp2);
}


static void vala_ccode_expression_binding_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	ValaCCodeExpressionBinding * self;
	self = VALA_CCODE_EXPRESSION_BINDING (object);
	switch (property_id) {
		case VALA_CCODE_EXPRESSION_BINDING_CODENODE:
		g_value_set_object (value, vala_ccode_expression_binding_get_codenode (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}


static void vala_ccode_expression_binding_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	ValaCCodeExpressionBinding * self;
	self = VALA_CCODE_EXPRESSION_BINDING (object);
	switch (property_id) {
		case VALA_CCODE_EXPRESSION_BINDING_CODENODE:
		vala_ccode_expression_binding_set_codenode (self, g_value_get_object (value));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}


static void vala_ccode_expression_binding_class_init (ValaCCodeExpressionBindingClass * klass) {
	vala_ccode_expression_binding_parent_class = g_type_class_peek_parent (klass);
	g_type_class_add_private (klass, sizeof (ValaCCodeExpressionBindingPrivate));
	G_OBJECT_CLASS (klass)->get_property = vala_ccode_expression_binding_get_property;
	G_OBJECT_CLASS (klass)->set_property = vala_ccode_expression_binding_set_property;
	G_OBJECT_CLASS (klass)->dispose = vala_ccode_expression_binding_dispose;
	g_object_class_install_property (G_OBJECT_CLASS (klass), VALA_CCODE_EXPRESSION_BINDING_CODENODE, g_param_spec_object ("codenode", "codenode", "codenode", VALA_TYPE_CCODE_EXPRESSION, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
}


static void vala_ccode_expression_binding_instance_init (ValaCCodeExpressionBinding * self) {
	self->priv = VALA_CCODE_EXPRESSION_BINDING_GET_PRIVATE (self);
}


static void vala_ccode_expression_binding_dispose (GObject * obj) {
	ValaCCodeExpressionBinding * self;
	self = VALA_CCODE_EXPRESSION_BINDING (obj);
	(self->priv->_codenode == NULL ? NULL : (self->priv->_codenode = (g_object_unref (self->priv->_codenode), NULL)));
	G_OBJECT_CLASS (vala_ccode_expression_binding_parent_class)->dispose (obj);
}


GType vala_ccode_expression_binding_get_type (void) {
	static GType vala_ccode_expression_binding_type_id = 0;
	if (G_UNLIKELY (vala_ccode_expression_binding_type_id == 0)) {
		static const GTypeInfo g_define_type_info = { sizeof (ValaCCodeExpressionBindingClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) vala_ccode_expression_binding_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ValaCCodeExpressionBinding), 0, (GInstanceInitFunc) vala_ccode_expression_binding_instance_init };
		vala_ccode_expression_binding_type_id = g_type_register_static (VALA_TYPE_CCODE_BINDING, "ValaCCodeExpressionBinding", &g_define_type_info, G_TYPE_FLAG_ABSTRACT);
	}
	return vala_ccode_expression_binding_type_id;
}