98
98
GError * _inner_error_ = NULL;
99
99
self = (SQLHeavyRow*) base;
104
GString* _tmp1_ = NULL;
106
gboolean first_field;
107
SQLHeavyQueryable* _tmp19_ = NULL;
108
SQLHeavyQuery* _tmp20_ = NULL;
109
SQLHeavyQuery* query;
103
_tmp0_ = self->priv->values;
104
_tmp0__length1 = self->priv->values_length1;
110
105
g_static_rec_mutex_lock (&self->priv->__lock_values);
111
if (self->priv->values == NULL) {
112
g_static_rec_mutex_unlock (&self->priv->__lock_values);
116
_tmp0_ = sql_heavy_table_get_field_count (self->priv->_table);
117
field_count = _tmp0_;
118
_tmp1_ = g_string_new ("");
121
if (self->priv->_id > 0) {
122
const gchar* _tmp2_ = NULL;
123
_tmp2_ = sql_heavy_table_get_name (self->priv->_table);
124
g_string_printf (sql, "UPDATE `%s` SET ", _tmp2_);
134
if (!(field < field_count)) {
137
if (self->priv->values[field] != NULL) {
138
gchar* _tmp4_ = NULL;
140
const gchar* _tmp5_ = NULL;
141
const gchar* _tmp6_ = NULL;
142
gchar* _tmp7_ = NULL;
145
g_string_append (sql, ", ");
147
_tmp4_ = sql_heavy_table_field_name (self->priv->_table, field, &_inner_error_);
149
if (_inner_error_ != NULL) {
150
_g_string_free0 (sql);
153
_tmp5_ = string_to_string (field_name);
154
_tmp6_ = string_to_string (field_name);
155
_tmp7_ = g_strconcat ("`", _tmp5_, "` = :", _tmp6_, NULL);
157
g_string_append (sql, _tmp8_);
160
_g_free0 (field_name);
164
g_string_append (sql, " WHERE `ROWID` = :ROWID;");
166
const gchar* _tmp9_ = NULL;
167
GString* _tmp10_ = NULL;
169
_tmp9_ = sql_heavy_table_get_name (self->priv->_table);
170
g_string_printf (sql, "INSERT INTO `%s` (", _tmp9_);
171
_tmp10_ = g_string_new ("");
182
if (!(field < field_count)) {
185
if (self->priv->values[field] != NULL) {
186
gchar* _tmp12_ = NULL;
188
const gchar* _tmp13_ = NULL;
189
gchar* _tmp14_ = NULL;
191
const gchar* _tmp16_ = NULL;
192
gchar* _tmp17_ = NULL;
195
g_string_append (sql, ", ");
196
g_string_append (qvalues, ", ");
198
_tmp12_ = sql_heavy_table_field_name (self->priv->_table, field, &_inner_error_);
199
field_name = _tmp12_;
200
if (_inner_error_ != NULL) {
201
_g_string_free0 (qvalues);
202
_g_string_free0 (sql);
205
_tmp13_ = string_to_string (field_name);
206
_tmp14_ = g_strconcat ("`", _tmp13_, "`", NULL);
208
g_string_append (sql, _tmp15_);
210
_tmp16_ = string_to_string (field_name);
211
_tmp17_ = g_strconcat (":", _tmp16_, NULL);
213
g_string_append (qvalues, _tmp18_);
216
_g_free0 (field_name);
220
g_string_append (sql, ") VALUES (");
221
g_string_append (sql, qvalues->str);
222
g_string_append (sql, ");");
223
_g_string_free0 (qvalues);
225
_tmp19_ = sql_heavy_table_get_queryable (self->priv->_table);
226
_tmp20_ = sql_heavy_query_new (_tmp19_, sql->str, &_inner_error_);
228
if (_inner_error_ != NULL) {
110
SQLHeavyTable* _tmp3_;
116
gboolean first_field;
118
SQLHeavyTable* _tmp67_;
119
SQLHeavyQueryable* _tmp68_;
120
SQLHeavyQueryable* _tmp69_;
122
const gchar* _tmp71_;
123
SQLHeavyQuery* _tmp72_;
124
SQLHeavyQuery* query;
126
_tmp1_ = self->priv->values;
127
_tmp1__length1 = self->priv->values_length1;
128
if (_tmp1_ == NULL) {
132
_tmp2_ = self->priv->values;
133
_tmp2__length1 = self->priv->values_length1;
134
g_static_rec_mutex_unlock (&self->priv->__lock_values);
139
_tmp3_ = self->priv->_table;
140
_tmp4_ = sql_heavy_table_get_field_count (_tmp3_);
142
field_count = _tmp5_;
143
_tmp6_ = g_string_new ("");
146
_tmp7_ = self->priv->_id;
147
if (_tmp7_ > ((gint64) 0)) {
149
SQLHeavyTable* _tmp9_;
150
const gchar* _tmp10_;
151
const gchar* _tmp11_;
154
_tmp9_ = self->priv->_table;
155
_tmp10_ = sql_heavy_table_get_name (_tmp9_);
157
g_string_printf (_tmp8_, "UPDATE `%s` SET ", _tmp11_);
167
gint _tmp17__length1;
178
_tmp16_ = field_count;
179
if (!(_tmp15_ < _tmp16_)) {
182
_tmp17_ = self->priv->values;
183
_tmp17__length1 = self->priv->values_length1;
185
_tmp19_ = _tmp17_[_tmp18_];
186
if (_tmp19_ != NULL) {
188
SQLHeavyTable* _tmp22_;
190
gchar* _tmp24_ = NULL;
193
const gchar* _tmp26_;
194
const gchar* _tmp27_ = NULL;
195
const gchar* _tmp28_;
196
const gchar* _tmp29_ = NULL;
197
gchar* _tmp30_ = NULL;
199
_tmp20_ = first_field;
203
g_string_append (_tmp21_, ", ");
205
_tmp22_ = self->priv->_table;
207
_tmp24_ = sql_heavy_table_field_name (_tmp22_, _tmp23_, &_inner_error_);
208
field_name = _tmp24_;
209
if (_inner_error_ != NULL) {
210
_g_string_free0 (sql);
214
_tmp26_ = field_name;
215
_tmp27_ = string_to_string (_tmp26_);
216
_tmp28_ = field_name;
217
_tmp29_ = string_to_string (_tmp28_);
218
_tmp30_ = g_strconcat ("`", _tmp27_, "` = :", _tmp29_, NULL);
220
g_string_append (_tmp25_, _tmp31_);
223
_g_free0 (field_name);
228
g_string_append (_tmp32_, " WHERE `ROWID` = :ROWID;");
231
SQLHeavyTable* _tmp34_;
232
const gchar* _tmp35_;
233
const gchar* _tmp36_;
239
const gchar* _tmp65_;
242
_tmp34_ = self->priv->_table;
243
_tmp35_ = sql_heavy_table_get_name (_tmp34_);
245
g_string_printf (_tmp33_, "INSERT INTO `%s` (", _tmp36_);
246
_tmp37_ = g_string_new ("");
257
gint _tmp43__length1;
268
_tmp42_ = field_count;
269
if (!(_tmp41_ < _tmp42_)) {
272
_tmp43_ = self->priv->values;
273
_tmp43__length1 = self->priv->values_length1;
275
_tmp45_ = _tmp43_[_tmp44_];
276
if (_tmp45_ != NULL) {
278
SQLHeavyTable* _tmp49_;
280
gchar* _tmp51_ = NULL;
283
const gchar* _tmp53_;
284
const gchar* _tmp54_ = NULL;
285
gchar* _tmp55_ = NULL;
288
const gchar* _tmp58_;
289
const gchar* _tmp59_ = NULL;
290
gchar* _tmp60_ = NULL;
292
_tmp46_ = first_field;
297
g_string_append (_tmp47_, ", ");
299
g_string_append (_tmp48_, ", ");
301
_tmp49_ = self->priv->_table;
303
_tmp51_ = sql_heavy_table_field_name (_tmp49_, _tmp50_, &_inner_error_);
304
field_name = _tmp51_;
305
if (_inner_error_ != NULL) {
306
_g_string_free0 (qvalues);
307
_g_string_free0 (sql);
311
_tmp53_ = field_name;
312
_tmp54_ = string_to_string (_tmp53_);
313
_tmp55_ = g_strconcat ("`", _tmp54_, "`", NULL);
315
g_string_append (_tmp52_, _tmp56_);
318
_tmp58_ = field_name;
319
_tmp59_ = string_to_string (_tmp58_);
320
_tmp60_ = g_strconcat (":", _tmp59_, NULL);
322
g_string_append (_tmp57_, _tmp61_);
325
_g_free0 (field_name);
330
g_string_append (_tmp62_, ") VALUES (");
333
_tmp65_ = _tmp64_->str;
334
g_string_append (_tmp63_, _tmp65_);
336
g_string_append (_tmp66_, ");");
337
_g_string_free0 (qvalues);
339
_tmp67_ = self->priv->_table;
340
_tmp68_ = sql_heavy_table_get_queryable (_tmp67_);
343
_tmp71_ = _tmp70_->str;
344
_tmp72_ = sql_heavy_query_new (_tmp69_, _tmp71_, &_inner_error_);
346
if (_inner_error_ != NULL) {
347
_g_string_free0 (sql);
359
gint _tmp78__length1;
370
_tmp77_ = field_count;
371
if (!(_tmp76_ < _tmp77_)) {
374
_tmp78_ = self->priv->values;
375
_tmp78__length1 = self->priv->values_length1;
377
_tmp80_ = _tmp78_[_tmp79_];
378
if (_tmp80_ != NULL) {
379
SQLHeavyTable* _tmp81_;
381
gchar* _tmp83_ = NULL;
383
SQLHeavyQuery* _tmp84_;
384
const gchar* _tmp85_;
385
const gchar* _tmp86_ = NULL;
386
gchar* _tmp87_ = NULL;
389
gint _tmp89__length1;
392
_tmp81_ = self->priv->_table;
394
_tmp83_ = sql_heavy_table_field_name (_tmp81_, _tmp82_, &_inner_error_);
395
field_name = _tmp83_;
396
if (_inner_error_ != NULL) {
397
_g_object_unref0 (query);
398
_g_string_free0 (sql);
402
_tmp85_ = field_name;
403
_tmp86_ = string_to_string (_tmp85_);
404
_tmp87_ = g_strconcat (":", _tmp86_, NULL);
406
_tmp89_ = self->priv->values;
407
_tmp89__length1 = self->priv->values_length1;
409
_tmp91_ = _tmp89_[_tmp90_];
410
sql_heavy_query_set (_tmp84_, _tmp88_, _tmp91_, &_inner_error_);
412
if (_inner_error_ != NULL) {
413
_g_free0 (field_name);
414
_g_object_unref0 (query);
415
_g_string_free0 (sql);
418
_g_free0 (field_name);
422
_tmp92_ = self->priv->_id;
423
if (_tmp92_ > ((gint64) 0)) {
424
SQLHeavyQuery* _tmp93_;
426
SQLHeavyQuery* _tmp95_;
427
SQLHeavyQueryResult* _tmp96_ = NULL;
428
SQLHeavyQueryResult* _tmp97_;
430
_tmp94_ = self->priv->_id;
431
sql_heavy_query_set_int64 (_tmp93_, ":ROWID", _tmp94_, &_inner_error_);
432
if (_inner_error_ != NULL) {
433
_g_object_unref0 (query);
434
_g_string_free0 (sql);
438
_tmp96_ = sql_heavy_query_execute (_tmp95_, NULL, &_inner_error_, NULL);
440
_g_object_unref0 (_tmp97_);
441
if (_inner_error_ != NULL) {
442
_g_object_unref0 (query);
443
_g_string_free0 (sql);
447
SQLHeavyQuery* _tmp98_;
448
gint64 _tmp99_ = 0LL;
450
SQLHeavyTable* _tmp101_;
452
_tmp99_ = sql_heavy_query_execute_insert (_tmp98_, NULL, &_inner_error_, NULL);
454
if (_inner_error_ != NULL) {
455
_g_object_unref0 (query);
456
_g_string_free0 (sql);
459
self->priv->_id = _tmp100_;
460
_tmp101_ = self->priv->_table;
461
sql_heavy_table_register_row (_tmp101_, self);
462
sql_heavy_row_update_cache (self, &_inner_error_);
463
if (_inner_error_ != NULL) {
464
_g_object_unref0 (query);
465
_g_string_free0 (sql);
469
self->priv->values = (_vala_array_free (self->priv->values, self->priv->values_length1, (GDestroyNotify) _vala_GValue_free), NULL);
470
self->priv->values = NULL;
471
self->priv->values_length1 = 0;
472
self->priv->_values_size_ = self->priv->values_length1;
473
_g_object_unref0 (query);
229
474
_g_string_free0 (sql);
241
if (!(field < field_count)) {
244
if (self->priv->values[field] != NULL) {
245
gchar* _tmp22_ = NULL;
247
const gchar* _tmp23_ = NULL;
248
gchar* _tmp24_ = NULL;
250
_tmp22_ = sql_heavy_table_field_name (self->priv->_table, field, &_inner_error_);
251
field_name = _tmp22_;
252
if (_inner_error_ != NULL) {
253
_g_object_unref0 (query);
254
_g_string_free0 (sql);
257
_tmp23_ = string_to_string (field_name);
258
_tmp24_ = g_strconcat (":", _tmp23_, NULL);
260
sql_heavy_query_set (query, _tmp25_, self->priv->values[field], &_inner_error_);
262
if (_inner_error_ != NULL) {
263
_g_free0 (field_name);
264
_g_object_unref0 (query);
265
_g_string_free0 (sql);
268
_g_free0 (field_name);
272
if (self->priv->_id > 0) {
273
SQLHeavyQueryResult* _tmp26_ = NULL;
274
SQLHeavyQueryResult* _tmp27_;
275
sql_heavy_query_set_int64 (query, ":ROWID", self->priv->_id, &_inner_error_);
276
if (_inner_error_ != NULL) {
277
_g_object_unref0 (query);
278
_g_string_free0 (sql);
281
_tmp26_ = sql_heavy_query_execute (query, NULL, &_inner_error_, NULL);
283
_g_object_unref0 (_tmp27_);
284
if (_inner_error_ != NULL) {
285
_g_object_unref0 (query);
286
_g_string_free0 (sql);
292
_tmp28_ = sql_heavy_query_execute_insert (query, NULL, &_inner_error_, NULL);
294
if (_inner_error_ != NULL) {
295
_g_object_unref0 (query);
296
_g_string_free0 (sql);
299
self->priv->_id = _tmp29_;
300
sql_heavy_table_register_row (self->priv->_table, self);
301
sql_heavy_row_update_cache (self, &_inner_error_);
302
if (_inner_error_ != NULL) {
303
_g_object_unref0 (query);
304
_g_string_free0 (sql);
308
self->priv->values = (_vala_array_free (self->priv->values, self->priv->values_length1, (GDestroyNotify) _vala_GValue_free), NULL);
309
self->priv->values = NULL;
310
self->priv->values_length1 = 0;
311
self->priv->_values_size_ = 0;
312
_g_object_unref0 (query);
313
_g_string_free0 (sql);
315
g_static_rec_mutex_unlock (&self->priv->__lock_values);
479
gint _tmp102__length1;
480
_tmp102_ = self->priv->values;
481
_tmp102__length1 = self->priv->values_length1;
482
g_static_rec_mutex_unlock (&self->priv->__lock_values);
316
484
if (_inner_error_ != NULL) {
317
485
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
318
486
g_propagate_error (error, _inner_error_);
505
719
static void sql_heavy_row_real_delete (SQLHeavyMutableRecord* base, GError** error) {
506
720
SQLHeavyRow * self;
507
722
GError * _inner_error_ = NULL;
508
723
self = (SQLHeavyRow*) base;
509
if (self->priv->_id > 0) {
510
SQLHeavyQueryable* _tmp0_ = NULL;
511
const gchar* _tmp1_ = NULL;
512
const gchar* _tmp2_ = NULL;
513
gchar* _tmp3_ = NULL;
515
SQLHeavyQuery* _tmp5_ = NULL;
516
SQLHeavyQuery* _tmp6_;
724
_tmp0_ = self->priv->_id;
725
if (_tmp0_ > ((gint64) 0)) {
726
SQLHeavyTable* _tmp1_;
727
SQLHeavyQueryable* _tmp2_;
728
SQLHeavyQueryable* _tmp3_;
729
SQLHeavyTable* _tmp4_;
732
const gchar* _tmp7_ = NULL;
733
gchar* _tmp8_ = NULL;
735
SQLHeavyQuery* _tmp10_ = NULL;
736
SQLHeavyQuery* _tmp11_;
517
737
SQLHeavyQuery* query;
518
SQLHeavyQueryResult* _tmp7_ = NULL;
519
SQLHeavyQueryResult* _tmp8_;
520
_tmp0_ = sql_heavy_table_get_queryable (self->priv->_table);
521
_tmp1_ = sql_heavy_table_get_name (self->priv->_table);
522
_tmp2_ = string_to_string (_tmp1_);
523
_tmp3_ = g_strconcat ("DELETE FROM `", _tmp2_, "` WHERE `ROWID` = :id;", NULL);
525
_tmp5_ = sql_heavy_queryable_prepare (_tmp0_, _tmp4_, &_inner_error_);
738
SQLHeavyQuery* _tmp12_;
740
SQLHeavyQuery* _tmp14_;
741
SQLHeavyQueryResult* _tmp15_ = NULL;
742
SQLHeavyQueryResult* _tmp16_;
743
_tmp1_ = self->priv->_table;
744
_tmp2_ = sql_heavy_table_get_queryable (_tmp1_);
746
_tmp4_ = self->priv->_table;
747
_tmp5_ = sql_heavy_table_get_name (_tmp4_);
529
if (_inner_error_ != NULL) {
530
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
531
g_propagate_error (error, _inner_error_);
534
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
535
g_clear_error (&_inner_error_);
539
sql_heavy_query_set_int64 (query, ":id", self->priv->_id, &_inner_error_);
540
if (_inner_error_ != NULL) {
541
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
542
g_propagate_error (error, _inner_error_);
543
_g_object_unref0 (query);
546
_g_object_unref0 (query);
547
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
548
g_clear_error (&_inner_error_);
552
_tmp7_ = sql_heavy_query_execute (query, NULL, &_inner_error_, NULL);
554
_g_object_unref0 (_tmp8_);
749
_tmp7_ = string_to_string (_tmp6_);
750
_tmp8_ = g_strconcat ("DELETE FROM `", _tmp7_, "` WHERE `ROWID` = :id;", NULL);
752
_tmp10_ = sql_heavy_queryable_prepare (_tmp3_, _tmp9_, &_inner_error_);
756
if (_inner_error_ != NULL) {
757
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
758
g_propagate_error (error, _inner_error_);
761
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
762
g_clear_error (&_inner_error_);
767
_tmp13_ = self->priv->_id;
768
sql_heavy_query_set_int64 (_tmp12_, ":id", _tmp13_, &_inner_error_);
769
if (_inner_error_ != NULL) {
770
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
771
g_propagate_error (error, _inner_error_);
772
_g_object_unref0 (query);
775
_g_object_unref0 (query);
776
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
777
g_clear_error (&_inner_error_);
782
_tmp15_ = sql_heavy_query_execute (_tmp14_, NULL, &_inner_error_, NULL);
784
_g_object_unref0 (_tmp16_);
555
785
if (_inner_error_ != NULL) {
556
786
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
557
787
g_propagate_error (error, _inner_error_);
575
805
static void sql_heavy_row_real_fetch (SQLHeavyRecord* base, gint field, GValue* result, GError** error) {
576
806
SQLHeavyRow * self;
577
807
gboolean _tmp0_ = FALSE;
578
gboolean _tmp3_ = FALSE;
579
gchar* _tmp6_ = NULL;
811
gboolean _tmp10_ = FALSE;
814
SQLHeavyTable* _tmp20_;
816
gchar* _tmp22_ = NULL;
580
817
gchar* field_name;
581
SQLHeavyQueryable* _tmp8_ = NULL;
582
const gchar* _tmp9_ = NULL;
583
const gchar* _tmp10_ = NULL;
584
const gchar* _tmp11_ = NULL;
585
gchar* _tmp12_ = NULL;
587
SQLHeavyQuery* _tmp14_ = NULL;
588
SQLHeavyQuery* _tmp15_;
819
SQLHeavyTable* _tmp26_;
820
SQLHeavyQueryable* _tmp27_;
821
SQLHeavyQueryable* _tmp28_;
822
const gchar* _tmp29_;
823
const gchar* _tmp30_ = NULL;
824
SQLHeavyTable* _tmp31_;
825
const gchar* _tmp32_;
826
const gchar* _tmp33_;
827
const gchar* _tmp34_ = NULL;
828
gchar* _tmp35_ = NULL;
830
SQLHeavyQuery* _tmp37_;
831
SQLHeavyQuery* _tmp38_;
589
832
SQLHeavyQuery* query;
590
SQLHeavyQueryResult* _tmp16_ = NULL;
591
SQLHeavyQueryResult* _tmp17_;
592
SQLHeavyQueryResult* _tmp18_;
593
GValue _tmp19_ = {0};
594
GValue _tmp20_ = {0};
833
SQLHeavyQuery* _tmp39_;
835
SQLHeavyQuery* _tmp41_;
836
SQLHeavyQueryResult* _tmp42_ = NULL;
837
SQLHeavyQueryResult* _tmp43_;
838
SQLHeavyQueryResult* _tmp44_;
839
GValue _tmp45_ = {0};
597
842
GError * _inner_error_ = NULL;
598
843
self = (SQLHeavyRow*) base;
599
if (self->priv->values != NULL) {
600
_tmp0_ = self->priv->values[field] != NULL;
844
_tmp1_ = self->priv->values;
845
_tmp1__length1 = self->priv->values_length1;
846
if (_tmp1_ != NULL) {
851
_tmp2_ = self->priv->values;
852
_tmp2__length1 = self->priv->values_length1;
854
_tmp4_ = _tmp2_[_tmp3_];
855
_tmp0_ = _tmp4_ != NULL;
607
if (G_IS_VALUE (self->priv->values[field])) {
608
g_value_init (&_tmp2_, G_VALUE_TYPE (self->priv->values[field]));
609
g_value_copy (self->priv->values[field], &_tmp2_);
866
_tmp6_ = self->priv->values;
867
_tmp6__length1 = self->priv->values_length1;
869
_tmp8_ = _tmp6_[_tmp7_];
870
if (G_IS_VALUE (_tmp8_)) {
871
g_value_init (&_tmp9_, G_VALUE_TYPE (_tmp8_));
872
g_value_copy (_tmp8_, &_tmp9_);
611
_tmp2_ = *self->priv->values[field];
617
if (self->priv->_enable_cache) {
618
_tmp3_ = self->priv->cache[field] != NULL;
879
_tmp11_ = self->priv->_enable_cache;
882
gint _tmp12__length1;
885
_tmp12_ = self->priv->cache;
886
_tmp12__length1 = self->priv->cache_length1;
888
_tmp14_ = _tmp12_[_tmp13_];
889
_tmp10_ = _tmp14_ != NULL;
625
if (G_IS_VALUE (self->priv->cache[field])) {
626
g_value_init (&_tmp5_, G_VALUE_TYPE (self->priv->cache[field]));
627
g_value_copy (self->priv->cache[field], &_tmp5_);
896
gint _tmp16__length1;
899
GValue _tmp19_ = {0};
900
_tmp16_ = self->priv->cache;
901
_tmp16__length1 = self->priv->cache_length1;
903
_tmp18_ = _tmp16_[_tmp17_];
904
if (G_IS_VALUE (_tmp18_)) {
905
g_value_init (&_tmp19_, G_VALUE_TYPE (_tmp18_));
906
g_value_copy (_tmp18_, &_tmp19_);
629
_tmp5_ = *self->priv->cache[field];
635
_tmp6_ = sql_heavy_table_field_name (self->priv->_table, field, &_inner_error_);
637
if (_inner_error_ != NULL) {
638
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
639
g_propagate_error (error, _inner_error_);
642
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
643
g_clear_error (&_inner_error_);
647
if (self->priv->_id <= 0) {
648
GError* _tmp7_ = NULL;
649
_tmp7_ = g_error_new (SQL_HEAVY_ERROR, SQL_HEAVY_ERROR_MISUSE, "Cannot read field `%s` from row not persisted to database.", field_name);
650
_inner_error_ = _tmp7_;
651
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
652
g_propagate_error (error, _inner_error_);
653
_g_free0 (field_name);
656
_g_free0 (field_name);
657
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
658
g_clear_error (&_inner_error_);
662
_tmp8_ = sql_heavy_table_get_queryable (self->priv->_table);
663
_tmp9_ = string_to_string (field_name);
664
_tmp10_ = sql_heavy_table_get_name (self->priv->_table);
665
_tmp11_ = string_to_string (_tmp10_);
666
_tmp12_ = g_strconcat ("SELECT `", _tmp9_, "` FROM `", _tmp11_, "` WHERE `ROWID` = :id;", NULL);
668
_tmp14_ = sql_heavy_query_new (_tmp8_, _tmp13_, &_inner_error_);
672
if (_inner_error_ != NULL) {
673
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
674
g_propagate_error (error, _inner_error_);
675
_g_free0 (field_name);
678
_g_free0 (field_name);
679
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
680
g_clear_error (&_inner_error_);
684
sql_heavy_query_set_int64 (query, ":id", self->priv->_id, &_inner_error_);
685
if (_inner_error_ != NULL) {
686
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
687
g_propagate_error (error, _inner_error_);
688
_g_object_unref0 (query);
689
_g_free0 (field_name);
692
_g_object_unref0 (query);
693
_g_free0 (field_name);
694
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
695
g_clear_error (&_inner_error_);
699
_tmp16_ = sql_heavy_query_execute (query, NULL, &_inner_error_, NULL);
701
if (_inner_error_ != NULL) {
702
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
703
g_propagate_error (error, _inner_error_);
704
_g_object_unref0 (query);
705
_g_free0 (field_name);
708
_g_object_unref0 (query);
709
_g_free0 (field_name);
710
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
711
g_clear_error (&_inner_error_);
716
sql_heavy_record_fetch ((SQLHeavyRecord*) _tmp18_, 0, &_tmp19_, &_inner_error_);
719
_g_object_unref0 (_tmp18_);
721
if (_inner_error_ != NULL) {
722
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
723
g_propagate_error (error, _inner_error_);
724
_g_object_unref0 (query);
725
_g_free0 (field_name);
728
_g_object_unref0 (query);
729
_g_free0 (field_name);
730
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
731
g_clear_error (&_inner_error_);
913
_tmp20_ = self->priv->_table;
915
_tmp22_ = sql_heavy_table_field_name (_tmp20_, _tmp21_, &_inner_error_);
916
field_name = _tmp22_;
917
if (_inner_error_ != NULL) {
918
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
919
g_propagate_error (error, _inner_error_);
922
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
923
g_clear_error (&_inner_error_);
927
_tmp23_ = self->priv->_id;
928
if (_tmp23_ <= ((gint64) 0)) {
929
const gchar* _tmp24_;
931
_tmp24_ = field_name;
932
_tmp25_ = g_error_new (SQL_HEAVY_ERROR, SQL_HEAVY_ERROR_MISUSE, "Cannot read field `%s` from row not persisted to database.", _tmp24_);
933
_inner_error_ = _tmp25_;
934
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
935
g_propagate_error (error, _inner_error_);
936
_g_free0 (field_name);
939
_g_free0 (field_name);
940
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
941
g_clear_error (&_inner_error_);
945
_tmp26_ = self->priv->_table;
946
_tmp27_ = sql_heavy_table_get_queryable (_tmp26_);
948
_tmp29_ = field_name;
949
_tmp30_ = string_to_string (_tmp29_);
950
_tmp31_ = self->priv->_table;
951
_tmp32_ = sql_heavy_table_get_name (_tmp31_);
953
_tmp34_ = string_to_string (_tmp33_);
954
_tmp35_ = g_strconcat ("SELECT `", _tmp30_, "` FROM `", _tmp34_, "` WHERE `ROWID` = :id;", NULL);
956
_tmp37_ = sql_heavy_query_new (_tmp28_, _tmp36_, &_inner_error_);
960
if (_inner_error_ != NULL) {
961
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
962
g_propagate_error (error, _inner_error_);
963
_g_free0 (field_name);
966
_g_free0 (field_name);
967
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
968
g_clear_error (&_inner_error_);
973
_tmp40_ = self->priv->_id;
974
sql_heavy_query_set_int64 (_tmp39_, ":id", _tmp40_, &_inner_error_);
975
if (_inner_error_ != NULL) {
976
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
977
g_propagate_error (error, _inner_error_);
978
_g_object_unref0 (query);
979
_g_free0 (field_name);
982
_g_object_unref0 (query);
983
_g_free0 (field_name);
984
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
985
g_clear_error (&_inner_error_);
990
_tmp42_ = sql_heavy_query_execute (_tmp41_, NULL, &_inner_error_, NULL);
992
if (_inner_error_ != NULL) {
993
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
994
g_propagate_error (error, _inner_error_);
995
_g_object_unref0 (query);
996
_g_free0 (field_name);
999
_g_object_unref0 (query);
1000
_g_free0 (field_name);
1001
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1002
g_clear_error (&_inner_error_);
1007
sql_heavy_record_fetch ((SQLHeavyRecord*) _tmp44_, 0, &_tmp45_, &_inner_error_);
1009
_g_object_unref0 (_tmp44_);
1011
if (_inner_error_ != NULL) {
1012
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
1013
g_propagate_error (error, _inner_error_);
1014
_g_object_unref0 (query);
1015
_g_free0 (field_name);
1018
_g_object_unref0 (query);
1019
_g_free0 (field_name);
1020
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1021
g_clear_error (&_inner_error_);
736
1026
_g_object_unref0 (query);
737
1027
_g_free0 (field_name);
791
1083
static SQLHeavyRow* sql_heavy_row_real_get_foreign_row (SQLHeavyRecord* base, const gchar* field, GError** error) {
792
1084
SQLHeavyRow * self;
793
1085
SQLHeavyRow* result = NULL;
1086
SQLHeavyTable* _tmp0_;
1087
const gchar* _tmp1_;
795
1089
gint foreign_key_idx;
796
SQLHeavyTable* _tmp1_ = NULL;
1090
SQLHeavyTable* _tmp3_;
1092
SQLHeavyTable* _tmp5_ = NULL;
797
1093
SQLHeavyTable* foreign_table;
800
SQLHeavyRow* _tmp4_ = NULL;
1094
const gchar* _tmp6_;
1095
gint64 _tmp7_ = 0LL;
1097
SQLHeavyTable* _tmp9_;
1098
SQLHeavyRow* _tmp10_;
801
1099
GError * _inner_error_ = NULL;
802
1100
self = (SQLHeavyRow*) base;
803
1101
g_return_val_if_fail (field != NULL, NULL);
804
_tmp0_ = sql_heavy_table_foreign_key_index (self->priv->_table, field, &_inner_error_);
805
foreign_key_idx = _tmp0_;
806
if (_inner_error_ != NULL) {
807
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
808
g_propagate_error (error, _inner_error_);
811
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
812
g_clear_error (&_inner_error_);
816
_tmp1_ = sql_heavy_table_foreign_key_table (self->priv->_table, foreign_key_idx, &_inner_error_);
817
foreign_table = _tmp1_;
818
if (_inner_error_ != NULL) {
819
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
820
g_propagate_error (error, _inner_error_);
823
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
824
g_clear_error (&_inner_error_);
828
_tmp2_ = sql_heavy_record_get_int64 ((SQLHeavyRecord*) self, field, &_inner_error_);
830
if (_inner_error_ != NULL) {
831
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
832
g_propagate_error (error, _inner_error_);
833
_g_object_unref0 (foreign_table);
836
_g_object_unref0 (foreign_table);
837
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
838
g_clear_error (&_inner_error_);
842
_tmp4_ = sql_heavy_row_new (foreign_table, _tmp3_);
1102
_tmp0_ = self->priv->_table;
1104
_tmp2_ = sql_heavy_table_foreign_key_index (_tmp0_, _tmp1_, &_inner_error_);
1105
foreign_key_idx = _tmp2_;
1106
if (_inner_error_ != NULL) {
1107
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
1108
g_propagate_error (error, _inner_error_);
1111
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1112
g_clear_error (&_inner_error_);
1116
_tmp3_ = self->priv->_table;
1117
_tmp4_ = foreign_key_idx;
1118
_tmp5_ = sql_heavy_table_foreign_key_table (_tmp3_, _tmp4_, &_inner_error_);
1119
foreign_table = _tmp5_;
1120
if (_inner_error_ != NULL) {
1121
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
1122
g_propagate_error (error, _inner_error_);
1125
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1126
g_clear_error (&_inner_error_);
1131
_tmp7_ = sql_heavy_record_get_int64 ((SQLHeavyRecord*) self, _tmp6_, &_inner_error_);
1133
if (_inner_error_ != NULL) {
1134
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
1135
g_propagate_error (error, _inner_error_);
1136
_g_object_unref0 (foreign_table);
1139
_g_object_unref0 (foreign_table);
1140
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1141
g_clear_error (&_inner_error_);
1145
_tmp9_ = foreign_table;
1146
_tmp10_ = sql_heavy_row_new (_tmp9_, _tmp8_);
844
1148
_g_object_unref0 (foreign_table);
853
1157
GError * _inner_error_ = NULL;
854
1158
g_return_if_fail (self != NULL);
857
SQLHeavyQueryable* _tmp2_ = NULL;
858
const gchar* _tmp3_ = NULL;
859
const gchar* _tmp4_ = NULL;
860
gchar* _tmp5_ = NULL;
862
SQLHeavyQuery* _tmp7_ = NULL;
863
SQLHeavyQuery* _tmp8_;
864
SQLHeavyQuery* query;
865
SQLHeavyQueryResult* _tmp9_ = NULL;
866
SQLHeavyQueryResult* _tmp10_;
867
SQLHeavyQueryResult* _tmp11_;
868
GValueArray* _tmp12_ = NULL;
869
GValueArray* _tmp13_;
871
gboolean* _tmp14_ = NULL;
872
gboolean* fields_changed;
873
gint fields_changed_length1;
874
gint _fields_changed_size_;
1161
gint _tmp0__length1;
1162
_tmp0_ = self->priv->cache;
1163
_tmp0__length1 = self->priv->cache_length1;
876
1164
g_static_rec_mutex_lock (&self->priv->__lock_cache);
877
if (self->priv->_id == 0) {
878
g_static_rec_mutex_unlock (&self->priv->__lock_cache);
881
if (!self->priv->_enable_cache) {
882
self->priv->cache = (_vala_array_free (self->priv->cache, self->priv->cache_length1, (GDestroyNotify) _vala_GValue_free), NULL);
883
self->priv->cache = NULL;
884
self->priv->cache_length1 = 0;
885
self->priv->_cache_size_ = 0;
886
g_static_rec_mutex_unlock (&self->priv->__lock_cache);
890
_tmp0_ = sql_heavy_record_get_field_count ((SQLHeavyRecord*) self);
892
if (self->priv->cache == NULL) {
893
GValue* _tmp1_ = NULL;
894
_tmp1_ = g_new0 (GValue, fc);
1169
SQLHeavyTable* _tmp10_;
1170
SQLHeavyQueryable* _tmp11_;
1171
SQLHeavyQueryable* _tmp12_;
1172
SQLHeavyTable* _tmp13_;
1173
const gchar* _tmp14_;
1174
const gchar* _tmp15_;
1175
const gchar* _tmp16_ = NULL;
1176
gchar* _tmp17_ = NULL;
1178
SQLHeavyQuery* _tmp19_;
1179
SQLHeavyQuery* _tmp20_;
1180
SQLHeavyQuery* query;
1181
SQLHeavyQuery* _tmp21_;
1183
SQLHeavyQuery* _tmp23_;
1184
SQLHeavyQueryResult* _tmp24_;
1185
SQLHeavyQueryResult* _tmp25_;
1186
SQLHeavyQueryResult* _tmp26_;
1187
GValueArray* _tmp27_ = NULL;
1188
GValueArray* _tmp28_;
1191
gboolean* _tmp30_ = NULL;
1192
gboolean* fields_changed;
1193
gint fields_changed_length1;
1194
gint _fields_changed_size_;
1196
_tmp1_ = self->priv->_id;
1197
if (_tmp1_ == ((gint64) 0)) {
1200
gint _tmp2__length1;
1201
_tmp2_ = self->priv->cache;
1202
_tmp2__length1 = self->priv->cache_length1;
1203
g_static_rec_mutex_unlock (&self->priv->__lock_cache);
1207
_tmp3_ = self->priv->_enable_cache;
895
1209
self->priv->cache = (_vala_array_free (self->priv->cache, self->priv->cache_length1, (GDestroyNotify) _vala_GValue_free), NULL);
896
self->priv->cache = _tmp1_;
897
self->priv->cache_length1 = fc;
898
self->priv->_cache_size_ = fc;
901
_tmp2_ = sql_heavy_table_get_queryable (self->priv->_table);
902
_tmp3_ = sql_heavy_table_get_name (self->priv->_table);
903
_tmp4_ = string_to_string (_tmp3_);
904
_tmp5_ = g_strconcat ("SELECT * FROM `", _tmp4_, "` WHERE `ROWID` = :id;", NULL);
906
_tmp7_ = sql_heavy_query_new (_tmp2_, _tmp6_, &_inner_error_);
910
if (_inner_error_ != NULL) {
913
sql_heavy_query_set_int64 (query, ":id", self->priv->_id, &_inner_error_);
914
if (_inner_error_ != NULL) {
915
_g_object_unref0 (query);
918
_tmp9_ = sql_heavy_query_result_new_no_lock (query, &_inner_error_);
920
if (_inner_error_ != NULL) {
921
_g_object_unref0 (query);
925
_tmp12_ = sql_heavy_record_fetch_row ((SQLHeavyRecord*) _tmp11_, &_inner_error_);
927
_g_object_unref0 (_tmp11_);
929
if (_inner_error_ != NULL) {
930
_g_object_unref0 (query);
933
_tmp14_ = g_new0 (gboolean, fc);
934
fields_changed = _tmp14_;
935
fields_changed_length1 = fc;
936
_fields_changed_size_ = fc;
943
gboolean _tmp16_ = FALSE;
951
if (self->priv->cache[f] == NULL) {
956
_tmp17_ = res->values[f];
957
_tmp18_ = sql_heavy_value_equal (self->priv->cache[f], &_tmp17_);
964
fields_changed[f] = self->priv->cache[f] != NULL;
965
_tmp19_ = res->values[f];
966
_tmp20_ = __g_value_dup0 (&_tmp19_);
968
__vala_GValue_free0 (self->priv->cache[f]);
969
self->priv->cache[f] = _tmp21_;
971
fields_changed[f] = FALSE;
987
if (fields_changed[f]) {
988
g_signal_emit_by_name (self, "field-changed", f);
992
fields_changed = (g_free (fields_changed), NULL);
993
_g_value_array_free0 (res);
994
_g_object_unref0 (query);
1210
self->priv->cache = NULL;
1211
self->priv->cache_length1 = 0;
1212
self->priv->_cache_size_ = self->priv->cache_length1;
1215
gint _tmp4__length1;
1216
_tmp4_ = self->priv->cache;
1217
_tmp4__length1 = self->priv->cache_length1;
1218
g_static_rec_mutex_unlock (&self->priv->__lock_cache);
1225
gint _tmp7__length1;
1226
_tmp5_ = sql_heavy_record_get_field_count ((SQLHeavyRecord*) self);
1229
_tmp7_ = self->priv->cache;
1230
_tmp7__length1 = self->priv->cache_length1;
1231
if (_tmp7_ == NULL) {
1233
GValue** _tmp9_ = NULL;
1235
_tmp9_ = g_new0 (GValue*, _tmp8_);
1236
self->priv->cache = (_vala_array_free (self->priv->cache, self->priv->cache_length1, (GDestroyNotify) _vala_GValue_free), NULL);
1237
self->priv->cache = _tmp9_;
1238
self->priv->cache_length1 = _tmp8_;
1239
self->priv->_cache_size_ = self->priv->cache_length1;
1242
_tmp10_ = self->priv->_table;
1243
_tmp11_ = sql_heavy_table_get_queryable (_tmp10_);
1245
_tmp13_ = self->priv->_table;
1246
_tmp14_ = sql_heavy_table_get_name (_tmp13_);
1248
_tmp16_ = string_to_string (_tmp15_);
1249
_tmp17_ = g_strconcat ("SELECT * FROM `", _tmp16_, "` WHERE `ROWID` = :id;", NULL);
1251
_tmp19_ = sql_heavy_query_new (_tmp12_, _tmp18_, &_inner_error_);
1255
if (_inner_error_ != NULL) {
1259
_tmp22_ = self->priv->_id;
1260
sql_heavy_query_set_int64 (_tmp21_, ":id", _tmp22_, &_inner_error_);
1261
if (_inner_error_ != NULL) {
1262
_g_object_unref0 (query);
1266
_tmp24_ = sql_heavy_query_result_new_no_lock (_tmp23_, &_inner_error_);
1268
if (_inner_error_ != NULL) {
1269
_g_object_unref0 (query);
1273
_tmp27_ = sql_heavy_record_fetch_row ((SQLHeavyRecord*) _tmp26_, &_inner_error_);
1275
_g_object_unref0 (_tmp26_);
1277
if (_inner_error_ != NULL) {
1278
_g_object_unref0 (query);
1282
_tmp30_ = g_new0 (gboolean, _tmp29_);
1283
fields_changed = _tmp30_;
1284
fields_changed_length1 = _tmp29_;
1285
_fields_changed_size_ = fields_changed_length1;
1295
gboolean _tmp36_ = FALSE;
1297
gint _tmp37__length1;
1310
if (!(_tmp34_ < _tmp35_)) {
1313
_tmp37_ = self->priv->cache;
1314
_tmp37__length1 = self->priv->cache_length1;
1316
_tmp39_ = _tmp37_[_tmp38_];
1317
if (_tmp39_ == NULL) {
1321
gint _tmp40__length1;
1324
GValueArray* _tmp43_;
1326
gint _tmp44__length1;
1330
gboolean _tmp48_ = FALSE;
1331
_tmp40_ = self->priv->cache;
1332
_tmp40__length1 = self->priv->cache_length1;
1334
_tmp42_ = _tmp40_[_tmp41_];
1336
_tmp44_ = _tmp43_->values;
1337
_tmp44__length1 = (gint) _tmp43_->n_values;
1339
_tmp46_ = _tmp44_[_tmp45_];
1341
_tmp48_ = sql_heavy_value_equal (&_tmp47_, &_tmp46_);
1347
gint _tmp50__length1;
1350
gint _tmp52__length1;
1355
gint _tmp56__length1;
1357
GValueArray* _tmp58_;
1359
gint _tmp59__length1;
1365
_tmp50_ = fields_changed;
1366
_tmp50__length1 = fields_changed_length1;
1368
_tmp52_ = self->priv->cache;
1369
_tmp52__length1 = self->priv->cache_length1;
1371
_tmp54_ = _tmp52_[_tmp53_];
1372
_tmp50_[_tmp51_] = _tmp54_ != NULL;
1373
_tmp55_ = _tmp50_[_tmp51_];
1374
_tmp56_ = self->priv->cache;
1375
_tmp56__length1 = self->priv->cache_length1;
1378
_tmp59_ = _tmp58_->values;
1379
_tmp59__length1 = (gint) _tmp58_->n_values;
1381
_tmp61_ = _tmp59_[_tmp60_];
1383
_tmp63_ = __g_value_dup0 (&_tmp62_);
1384
__vala_GValue_free0 (_tmp56_[_tmp57_]);
1385
_tmp56_[_tmp57_] = _tmp63_;
1386
_tmp64_ = _tmp56_[_tmp57_];
1389
gint _tmp65__length1;
1392
_tmp65_ = fields_changed;
1393
_tmp65__length1 = fields_changed_length1;
1395
_tmp65_[_tmp66_] = FALSE;
1396
_tmp67_ = _tmp65_[_tmp66_];
1409
gint _tmp73__length1;
1421
if (!(_tmp71_ < _tmp72_)) {
1424
_tmp73_ = fields_changed;
1425
_tmp73__length1 = fields_changed_length1;
1427
_tmp75_ = _tmp73_[_tmp74_];
1431
g_signal_emit_by_name (self, "field-changed", _tmp76_);
1435
fields_changed = (g_free (fields_changed), NULL);
1436
_g_value_array_free0 (res);
1437
_g_object_unref0 (query);
996
g_static_rec_mutex_unlock (&self->priv->__lock_cache);
1442
gint _tmp77__length1;
1443
_tmp77_ = self->priv->cache;
1444
_tmp77__length1 = self->priv->cache_length1;
1445
g_static_rec_mutex_unlock (&self->priv->__lock_cache);
997
1447
if (_inner_error_ != NULL) {
998
1448
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
999
1449
g_propagate_error (error, _inner_error_);
1148
1654
static gint sql_heavy_row_real_get_field_count (SQLHeavyRecord* base) {
1150
1656
SQLHeavyRow* self;
1657
SQLHeavyTable* _tmp0_;
1152
1660
self = (SQLHeavyRow*) base;
1153
_tmp0_ = sql_heavy_table_get_field_count (self->priv->_table);
1661
_tmp0_ = self->priv->_table;
1662
_tmp1_ = sql_heavy_table_get_field_count (_tmp0_);
1159
1669
gboolean sql_heavy_row_get_enable_cache (SQLHeavyRow* self) {
1160
1670
gboolean result;
1161
1672
g_return_val_if_fail (self != NULL, FALSE);
1162
result = self->priv->_enable_cache;
1673
_tmp0_ = self->priv->_enable_cache;
1167
1679
void sql_heavy_row_set_enable_cache (SQLHeavyRow* self, gboolean value) {
1168
1681
g_return_if_fail (self != NULL);
1169
self->priv->_enable_cache = value;
1683
self->priv->_enable_cache = _tmp0_;
1170
1684
g_object_notify ((GObject *) self, "enable-cache");
1174
static void _lambda2_ (SQLHeavyRow* self) {
1175
SQLHeavyQueryable* _tmp0_ = NULL;
1176
SQLHeavyDatabase* _tmp1_ = NULL;
1177
SQLHeavyDatabase* _tmp2_;
1178
_tmp0_ = sql_heavy_table_get_queryable (self->priv->_table);
1179
_tmp1_ = sql_heavy_queryable_get_database (_tmp0_);
1688
static void _sql_heavy_row___lambda4_ (SQLHeavyRow* self) {
1689
SQLHeavyTable* _tmp0_;
1690
SQLHeavyQueryable* _tmp1_;
1691
SQLHeavyQueryable* _tmp2_;
1692
SQLHeavyDatabase* _tmp3_;
1693
SQLHeavyDatabase* _tmp4_;
1694
SQLHeavyDatabase* _tmp5_;
1695
_tmp0_ = self->priv->_table;
1696
_tmp1_ = sql_heavy_table_get_queryable (_tmp0_);
1180
1697
_tmp2_ = _tmp1_;
1181
sql_heavy_database_add_step_unlock_notify_row (_tmp2_, self);
1182
_g_object_unref0 (_tmp2_);
1186
static void __lambda2__sql_heavy_row_changed (SQLHeavyRow* _sender, gpointer self) {
1191
static void _lambda3_ (GParamSpec* pspec, SQLHeavyRow* self) {
1698
_tmp3_ = sql_heavy_queryable_get_database (_tmp2_);
1701
sql_heavy_database_add_step_unlock_notify_row (_tmp5_, self);
1702
_g_object_unref0 (_tmp5_);
1706
static void __sql_heavy_row___lambda4__sql_heavy_row_changed (SQLHeavyRow* _sender, gpointer self) {
1707
_sql_heavy_row___lambda4_ (self);
1711
static void _sql_heavy_row___lambda5_ (SQLHeavyRow* self, GParamSpec* pspec) {
1192
1712
GError * _inner_error_ = NULL;
1193
1713
g_return_if_fail (pspec != NULL);
1194
sql_heavy_row_update_cache (self, &_inner_error_);
1195
if (_inner_error_ != NULL) {
1196
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
1197
goto __catch32_sql_heavy_error;
1715
sql_heavy_row_update_cache (self, &_inner_error_);
1716
if (_inner_error_ != NULL) {
1717
if (_inner_error_->domain == SQL_HEAVY_ERROR) {
1718
goto __catch32_sql_heavy_error;
1720
g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1721
g_clear_error (&_inner_error_);
1199
g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
1200
g_clear_error (&_inner_error_);
1203
1725
goto __finally32;
1204
1726
__catch32_sql_heavy_error:
1207
1729
const gchar* _tmp0_ = NULL;
1731
const gchar* _tmp2_;
1733
const gchar* _tmp4_;
1208
1734
e = _inner_error_;
1209
1735
_inner_error_ = NULL;
1210
if (self->priv->_enable_cache) {
1736
_tmp1_ = self->priv->_enable_cache;
1211
1738
_tmp0_ = "enable";
1213
1740
_tmp0_ = "disable";
1215
g_warning ("sqlheavy-row.vala:336: Unable to %s cache: %s", _tmp0_, e->message);
1744
_tmp4_ = _tmp3_->message;
1745
g_warning ("sqlheavy-row.vala:336: Unable to %s cache: %s", _tmp2_, _tmp4_);
1216
1746
_g_error_free0 (e);