1
/* Tweet.c generated by valac 0.30.0, the Vala compiler
2
* generated from Tweet.vala, do not modify */
4
/* -*- Mode: vala; indent-tabs-mode: nil; tab-width: 4 -*-*/
6
* Copyright (c) 2013-2016 Birdie Developers (http://birdieapp.github.io)
8
* This software is licensed under the GNU General Public License
9
* (version 3 or later). See the COPYING file in this distribution.
11
* You should have received a copy of the GNU Library General Public
12
* License along with this software; if not, write to the
13
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
14
* Boston, MA 02111-1307, USA.
16
* Authored by: Ivo Nunes <ivoavnunes@gmail.com>
17
* Vasco Nunes <vascomfnunes@gmail.com>
18
* Nathan Dyer <mail@nathandyer.me>
22
#include <glib-object.h>
25
#include <gobject/gvaluecollector.h>
28
#define BIRDIE_TYPE_TWEET (birdie_tweet_get_type ())
29
#define BIRDIE_TWEET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BIRDIE_TYPE_TWEET, BirdieTweet))
30
#define BIRDIE_TWEET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BIRDIE_TYPE_TWEET, BirdieTweetClass))
31
#define BIRDIE_IS_TWEET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BIRDIE_TYPE_TWEET))
32
#define BIRDIE_IS_TWEET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BIRDIE_TYPE_TWEET))
33
#define BIRDIE_TWEET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BIRDIE_TYPE_TWEET, BirdieTweetClass))
35
typedef struct _BirdieTweet BirdieTweet;
36
typedef struct _BirdieTweetClass BirdieTweetClass;
37
typedef struct _BirdieTweetPrivate BirdieTweetPrivate;
38
#define _g_free0(var) (var = (g_free (var), NULL))
39
typedef struct _BirdieParamSpecTweet BirdieParamSpecTweet;
42
GTypeInstance parent_instance;
43
volatile int ref_count;
44
BirdieTweetPrivate * priv;
48
gchar* user_screen_name;
51
gchar* profile_image_url;
52
gchar* profile_image_file;
53
gchar* in_reply_to_screen_name;
55
gchar* retweeted_by_name;
58
gchar* in_reply_to_status_id;
65
struct _BirdieTweetClass {
66
GTypeClass parent_class;
67
void (*finalize) (BirdieTweet *self);
70
struct _BirdieParamSpecTweet {
71
GParamSpec parent_instance;
75
static gpointer birdie_tweet_parent_class = NULL;
77
gpointer birdie_tweet_ref (gpointer instance);
78
void birdie_tweet_unref (gpointer instance);
79
GParamSpec* birdie_param_spec_tweet (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
80
void birdie_value_set_tweet (GValue* value, gpointer v_object);
81
void birdie_value_take_tweet (GValue* value, gpointer v_object);
82
gpointer birdie_value_get_tweet (const GValue* value);
83
GType birdie_tweet_get_type (void) G_GNUC_CONST;
85
BIRDIE_TWEET_DUMMY_PROPERTY
87
BirdieTweet* birdie_tweet_new (const gchar* id, const gchar* actual_id, const gchar* user_name, const gchar* user_screen_name, const gchar* text, const gchar* created_at, const gchar* profile_image_url, const gchar* profile_image_file, gboolean retweeted, gboolean favorited, gboolean dm, const gchar* in_reply_to_screen_name, const gchar* retweeted_by, const gchar* retweeted_by_name, const gchar* media_url, const gchar* youtube_video, gboolean verified, const gchar* in_reply_to_status_id);
88
BirdieTweet* birdie_tweet_construct (GType object_type, const gchar* id, const gchar* actual_id, const gchar* user_name, const gchar* user_screen_name, const gchar* text, const gchar* created_at, const gchar* profile_image_url, const gchar* profile_image_file, gboolean retweeted, gboolean favorited, gboolean dm, const gchar* in_reply_to_screen_name, const gchar* retweeted_by, const gchar* retweeted_by_name, const gchar* media_url, const gchar* youtube_video, gboolean verified, const gchar* in_reply_to_status_id);
89
static void birdie_tweet_finalize (BirdieTweet* obj);
92
BirdieTweet* birdie_tweet_construct (GType object_type, const gchar* id, const gchar* actual_id, const gchar* user_name, const gchar* user_screen_name, const gchar* text, const gchar* created_at, const gchar* profile_image_url, const gchar* profile_image_file, gboolean retweeted, gboolean favorited, gboolean dm, const gchar* in_reply_to_screen_name, const gchar* retweeted_by, const gchar* retweeted_by_name, const gchar* media_url, const gchar* youtube_video, gboolean verified, const gchar* in_reply_to_status_id) {
93
BirdieTweet* self = NULL;
94
const gchar* _tmp0_ = NULL;
96
const gchar* _tmp2_ = NULL;
98
const gchar* _tmp4_ = NULL;
100
const gchar* _tmp6_ = NULL;
101
gchar* _tmp7_ = NULL;
102
const gchar* _tmp8_ = NULL;
103
gchar* _tmp9_ = NULL;
104
const gchar* _tmp10_ = NULL;
105
gchar* _tmp11_ = NULL;
106
const gchar* _tmp12_ = NULL;
107
gchar* _tmp13_ = NULL;
108
const gchar* _tmp14_ = NULL;
109
gchar* _tmp15_ = NULL;
110
gboolean _tmp16_ = FALSE;
111
gboolean _tmp17_ = FALSE;
112
gboolean _tmp18_ = FALSE;
113
const gchar* _tmp19_ = NULL;
114
gchar* _tmp20_ = NULL;
115
const gchar* _tmp21_ = NULL;
116
gchar* _tmp22_ = NULL;
117
const gchar* _tmp23_ = NULL;
118
gchar* _tmp24_ = NULL;
119
const gchar* _tmp25_ = NULL;
120
gchar* _tmp26_ = NULL;
121
const gchar* _tmp27_ = NULL;
122
gchar* _tmp28_ = NULL;
123
gboolean _tmp29_ = FALSE;
124
const gchar* _tmp30_ = NULL;
125
gchar* _tmp31_ = NULL;
126
g_return_val_if_fail (id != NULL, NULL);
127
g_return_val_if_fail (actual_id != NULL, NULL);
128
g_return_val_if_fail (user_name != NULL, NULL);
129
g_return_val_if_fail (user_screen_name != NULL, NULL);
130
g_return_val_if_fail (text != NULL, NULL);
131
g_return_val_if_fail (created_at != NULL, NULL);
132
g_return_val_if_fail (profile_image_url != NULL, NULL);
133
g_return_val_if_fail (profile_image_file != NULL, NULL);
134
g_return_val_if_fail (in_reply_to_screen_name != NULL, NULL);
135
g_return_val_if_fail (retweeted_by != NULL, NULL);
136
g_return_val_if_fail (retweeted_by_name != NULL, NULL);
137
g_return_val_if_fail (media_url != NULL, NULL);
138
g_return_val_if_fail (youtube_video != NULL, NULL);
139
g_return_val_if_fail (in_reply_to_status_id != NULL, NULL);
140
self = (BirdieTweet*) g_type_create_instance (object_type);
142
_tmp1_ = g_strdup (_tmp0_);
146
_tmp3_ = g_strdup (_tmp2_);
147
_g_free0 (self->actual_id);
148
self->actual_id = _tmp3_;
150
_tmp5_ = g_strdup (_tmp4_);
151
_g_free0 (self->user_name);
152
self->user_name = _tmp5_;
153
_tmp6_ = user_screen_name;
154
_tmp7_ = g_strdup (_tmp6_);
155
_g_free0 (self->user_screen_name);
156
self->user_screen_name = _tmp7_;
158
_tmp9_ = g_strdup (_tmp8_);
159
_g_free0 (self->text);
161
_tmp10_ = created_at;
162
_tmp11_ = g_strdup (_tmp10_);
163
_g_free0 (self->created_at);
164
self->created_at = _tmp11_;
165
_tmp12_ = profile_image_url;
166
_tmp13_ = g_strdup (_tmp12_);
167
_g_free0 (self->profile_image_url);
168
self->profile_image_url = _tmp13_;
169
_tmp14_ = profile_image_file;
170
_tmp15_ = g_strdup (_tmp14_);
171
_g_free0 (self->profile_image_file);
172
self->profile_image_file = _tmp15_;
174
self->retweeted = _tmp16_;
176
self->favorited = _tmp17_;
179
_tmp19_ = in_reply_to_screen_name;
180
_tmp20_ = g_strdup (_tmp19_);
181
_g_free0 (self->in_reply_to_screen_name);
182
self->in_reply_to_screen_name = _tmp20_;
183
_tmp21_ = retweeted_by;
184
_tmp22_ = g_strdup (_tmp21_);
185
_g_free0 (self->retweeted_by);
186
self->retweeted_by = _tmp22_;
187
_tmp23_ = retweeted_by_name;
188
_tmp24_ = g_strdup (_tmp23_);
189
_g_free0 (self->retweeted_by_name);
190
self->retweeted_by_name = _tmp24_;
192
_tmp26_ = g_strdup (_tmp25_);
193
_g_free0 (self->media_url);
194
self->media_url = _tmp26_;
195
_tmp27_ = youtube_video;
196
_tmp28_ = g_strdup (_tmp27_);
197
_g_free0 (self->youtube_video);
198
self->youtube_video = _tmp28_;
200
self->verified = _tmp29_;
201
_tmp30_ = in_reply_to_status_id;
202
_tmp31_ = g_strdup (_tmp30_);
203
_g_free0 (self->in_reply_to_status_id);
204
self->in_reply_to_status_id = _tmp31_;
209
BirdieTweet* birdie_tweet_new (const gchar* id, const gchar* actual_id, const gchar* user_name, const gchar* user_screen_name, const gchar* text, const gchar* created_at, const gchar* profile_image_url, const gchar* profile_image_file, gboolean retweeted, gboolean favorited, gboolean dm, const gchar* in_reply_to_screen_name, const gchar* retweeted_by, const gchar* retweeted_by_name, const gchar* media_url, const gchar* youtube_video, gboolean verified, const gchar* in_reply_to_status_id) {
210
return birdie_tweet_construct (BIRDIE_TYPE_TWEET, id, actual_id, user_name, user_screen_name, text, created_at, profile_image_url, profile_image_file, retweeted, favorited, dm, in_reply_to_screen_name, retweeted_by, retweeted_by_name, media_url, youtube_video, verified, in_reply_to_status_id);
214
static void birdie_value_tweet_init (GValue* value) {
215
value->data[0].v_pointer = NULL;
219
static void birdie_value_tweet_free_value (GValue* value) {
220
if (value->data[0].v_pointer) {
221
birdie_tweet_unref (value->data[0].v_pointer);
226
static void birdie_value_tweet_copy_value (const GValue* src_value, GValue* dest_value) {
227
if (src_value->data[0].v_pointer) {
228
dest_value->data[0].v_pointer = birdie_tweet_ref (src_value->data[0].v_pointer);
230
dest_value->data[0].v_pointer = NULL;
235
static gpointer birdie_value_tweet_peek_pointer (const GValue* value) {
236
return value->data[0].v_pointer;
240
static gchar* birdie_value_tweet_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
241
if (collect_values[0].v_pointer) {
243
object = collect_values[0].v_pointer;
244
if (object->parent_instance.g_class == NULL) {
245
return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
246
} else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
247
return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
249
value->data[0].v_pointer = birdie_tweet_ref (object);
251
value->data[0].v_pointer = NULL;
257
static gchar* birdie_value_tweet_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
258
BirdieTweet** object_p;
259
object_p = collect_values[0].v_pointer;
261
return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
263
if (!value->data[0].v_pointer) {
265
} else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
266
*object_p = value->data[0].v_pointer;
268
*object_p = birdie_tweet_ref (value->data[0].v_pointer);
274
GParamSpec* birdie_param_spec_tweet (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
275
BirdieParamSpecTweet* spec;
276
g_return_val_if_fail (g_type_is_a (object_type, BIRDIE_TYPE_TWEET), NULL);
277
spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
278
G_PARAM_SPEC (spec)->value_type = object_type;
279
return G_PARAM_SPEC (spec);
283
gpointer birdie_value_get_tweet (const GValue* value) {
284
g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, BIRDIE_TYPE_TWEET), NULL);
285
return value->data[0].v_pointer;
289
void birdie_value_set_tweet (GValue* value, gpointer v_object) {
291
g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, BIRDIE_TYPE_TWEET));
292
old = value->data[0].v_pointer;
294
g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, BIRDIE_TYPE_TWEET));
295
g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
296
value->data[0].v_pointer = v_object;
297
birdie_tweet_ref (value->data[0].v_pointer);
299
value->data[0].v_pointer = NULL;
302
birdie_tweet_unref (old);
307
void birdie_value_take_tweet (GValue* value, gpointer v_object) {
309
g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, BIRDIE_TYPE_TWEET));
310
old = value->data[0].v_pointer;
312
g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, BIRDIE_TYPE_TWEET));
313
g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
314
value->data[0].v_pointer = v_object;
316
value->data[0].v_pointer = NULL;
319
birdie_tweet_unref (old);
324
static void birdie_tweet_class_init (BirdieTweetClass * klass) {
325
birdie_tweet_parent_class = g_type_class_peek_parent (klass);
326
((BirdieTweetClass *) klass)->finalize = birdie_tweet_finalize;
330
static void birdie_tweet_instance_init (BirdieTweet * self) {
335
static void birdie_tweet_finalize (BirdieTweet* obj) {
337
self = G_TYPE_CHECK_INSTANCE_CAST (obj, BIRDIE_TYPE_TWEET, BirdieTweet);
338
g_signal_handlers_destroy (self);
340
_g_free0 (self->actual_id);
341
_g_free0 (self->user_name);
342
_g_free0 (self->user_screen_name);
343
_g_free0 (self->text);
344
_g_free0 (self->created_at);
345
_g_free0 (self->profile_image_url);
346
_g_free0 (self->profile_image_file);
347
_g_free0 (self->in_reply_to_screen_name);
348
_g_free0 (self->retweeted_by);
349
_g_free0 (self->retweeted_by_name);
350
_g_free0 (self->media_url);
351
_g_free0 (self->youtube_video);
352
_g_free0 (self->in_reply_to_status_id);
356
GType birdie_tweet_get_type (void) {
357
static volatile gsize birdie_tweet_type_id__volatile = 0;
358
if (g_once_init_enter (&birdie_tweet_type_id__volatile)) {
359
static const GTypeValueTable g_define_type_value_table = { birdie_value_tweet_init, birdie_value_tweet_free_value, birdie_value_tweet_copy_value, birdie_value_tweet_peek_pointer, "p", birdie_value_tweet_collect_value, "p", birdie_value_tweet_lcopy_value };
360
static const GTypeInfo g_define_type_info = { sizeof (BirdieTweetClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) birdie_tweet_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BirdieTweet), 0, (GInstanceInitFunc) birdie_tweet_instance_init, &g_define_type_value_table };
361
static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
362
GType birdie_tweet_type_id;
363
birdie_tweet_type_id = g_type_register_fundamental (g_type_fundamental_next (), "BirdieTweet", &g_define_type_info, &g_define_type_fundamental_info, 0);
364
g_once_init_leave (&birdie_tweet_type_id__volatile, birdie_tweet_type_id);
366
return birdie_tweet_type_id__volatile;
370
gpointer birdie_tweet_ref (gpointer instance) {
373
g_atomic_int_inc (&self->ref_count);
378
void birdie_tweet_unref (gpointer instance) {
381
if (g_atomic_int_dec_and_test (&self->ref_count)) {
382
BIRDIE_TWEET_GET_CLASS (self)->finalize (self);
383
g_type_free_instance ((GTypeInstance *) self);