606
606
typedef struct _ValaLockStatement ValaLockStatement;
607
607
typedef struct _ValaLockStatementClass ValaLockStatementClass;
609
#define VALA_TYPE_UNLOCK_STATEMENT (vala_unlock_statement_get_type ())
610
#define VALA_UNLOCK_STATEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_UNLOCK_STATEMENT, ValaUnlockStatement))
611
#define VALA_UNLOCK_STATEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_UNLOCK_STATEMENT, ValaUnlockStatementClass))
612
#define VALA_IS_UNLOCK_STATEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VALA_TYPE_UNLOCK_STATEMENT))
613
#define VALA_IS_UNLOCK_STATEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VALA_TYPE_UNLOCK_STATEMENT))
614
#define VALA_UNLOCK_STATEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VALA_TYPE_UNLOCK_STATEMENT, ValaUnlockStatementClass))
616
typedef struct _ValaUnlockStatement ValaUnlockStatement;
617
typedef struct _ValaUnlockStatementClass ValaUnlockStatementClass;
609
619
#define VALA_TYPE_DELETE_STATEMENT (vala_delete_statement_get_type ())
610
620
#define VALA_DELETE_STATEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_DELETE_STATEMENT, ValaDeleteStatement))
611
621
#define VALA_DELETE_STATEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_DELETE_STATEMENT, ValaDeleteStatementClass))
676
686
typedef struct _ValaRealLiteral ValaRealLiteral;
677
687
typedef struct _ValaRealLiteralClass ValaRealLiteralClass;
689
#define VALA_TYPE_REGEX_LITERAL (vala_regex_literal_get_type ())
690
#define VALA_REGEX_LITERAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_REGEX_LITERAL, ValaRegexLiteral))
691
#define VALA_REGEX_LITERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_REGEX_LITERAL, ValaRegexLiteralClass))
692
#define VALA_IS_REGEX_LITERAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VALA_TYPE_REGEX_LITERAL))
693
#define VALA_IS_REGEX_LITERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VALA_TYPE_REGEX_LITERAL))
694
#define VALA_REGEX_LITERAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VALA_TYPE_REGEX_LITERAL, ValaRegexLiteralClass))
696
typedef struct _ValaRegexLiteral ValaRegexLiteral;
697
typedef struct _ValaRegexLiteralClass ValaRegexLiteralClass;
679
699
#define VALA_TYPE_STRING_LITERAL (vala_string_literal_get_type ())
680
700
#define VALA_STRING_LITERAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_STRING_LITERAL, ValaStringLiteral))
681
701
#define VALA_STRING_LITERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_STRING_LITERAL, ValaStringLiteralClass))
696
716
typedef struct _ValaTemplate ValaTemplate;
697
717
typedef struct _ValaTemplateClass ValaTemplateClass;
719
#define VALA_TYPE_LIST_LITERAL (vala_list_literal_get_type ())
720
#define VALA_LIST_LITERAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_LIST_LITERAL, ValaListLiteral))
721
#define VALA_LIST_LITERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_LIST_LITERAL, ValaListLiteralClass))
722
#define VALA_IS_LIST_LITERAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VALA_TYPE_LIST_LITERAL))
723
#define VALA_IS_LIST_LITERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VALA_TYPE_LIST_LITERAL))
724
#define VALA_LIST_LITERAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VALA_TYPE_LIST_LITERAL, ValaListLiteralClass))
726
typedef struct _ValaListLiteral ValaListLiteral;
727
typedef struct _ValaListLiteralClass ValaListLiteralClass;
729
#define VALA_TYPE_SET_LITERAL (vala_set_literal_get_type ())
730
#define VALA_SET_LITERAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_SET_LITERAL, ValaSetLiteral))
731
#define VALA_SET_LITERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_SET_LITERAL, ValaSetLiteralClass))
732
#define VALA_IS_SET_LITERAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VALA_TYPE_SET_LITERAL))
733
#define VALA_IS_SET_LITERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VALA_TYPE_SET_LITERAL))
734
#define VALA_SET_LITERAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VALA_TYPE_SET_LITERAL, ValaSetLiteralClass))
736
typedef struct _ValaSetLiteral ValaSetLiteral;
737
typedef struct _ValaSetLiteralClass ValaSetLiteralClass;
739
#define VALA_TYPE_MAP_LITERAL (vala_map_literal_get_type ())
740
#define VALA_MAP_LITERAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_MAP_LITERAL, ValaMapLiteral))
741
#define VALA_MAP_LITERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_MAP_LITERAL, ValaMapLiteralClass))
742
#define VALA_IS_MAP_LITERAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VALA_TYPE_MAP_LITERAL))
743
#define VALA_IS_MAP_LITERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VALA_TYPE_MAP_LITERAL))
744
#define VALA_MAP_LITERAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VALA_TYPE_MAP_LITERAL, ValaMapLiteralClass))
746
typedef struct _ValaMapLiteral ValaMapLiteral;
747
typedef struct _ValaMapLiteralClass ValaMapLiteralClass;
749
#define VALA_TYPE_TUPLE (vala_tuple_get_type ())
750
#define VALA_TUPLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_TUPLE, ValaTuple))
751
#define VALA_TUPLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_TUPLE, ValaTupleClass))
752
#define VALA_IS_TUPLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VALA_TYPE_TUPLE))
753
#define VALA_IS_TUPLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VALA_TYPE_TUPLE))
754
#define VALA_TUPLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VALA_TYPE_TUPLE, ValaTupleClass))
756
typedef struct _ValaTuple ValaTuple;
757
typedef struct _ValaTupleClass ValaTupleClass;
699
759
#define VALA_TYPE_NULL_LITERAL (vala_null_literal_get_type ())
700
760
#define VALA_NULL_LITERAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_NULL_LITERAL, ValaNullLiteral))
701
761
#define VALA_NULL_LITERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_NULL_LITERAL, ValaNullLiteralClass))
950
1010
typedef struct _ValaScope ValaScope;
951
1011
typedef struct _ValaScopeClass ValaScopeClass;
1013
#define VALA_TYPE_CODE_CONTEXT (vala_code_context_get_type ())
1014
#define VALA_CODE_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_CODE_CONTEXT, ValaCodeContext))
1015
#define VALA_CODE_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_CODE_CONTEXT, ValaCodeContextClass))
1016
#define VALA_IS_CODE_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VALA_TYPE_CODE_CONTEXT))
1017
#define VALA_IS_CODE_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VALA_TYPE_CODE_CONTEXT))
1018
#define VALA_CODE_CONTEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VALA_TYPE_CODE_CONTEXT, ValaCodeContextClass))
1020
typedef struct _ValaCodeContext ValaCodeContext;
1021
typedef struct _ValaCodeContextClass ValaCodeContextClass;
1023
#define VALA_TYPE_PROFILE (vala_profile_get_type ())
953
1025
#define VALA_TYPE_STATEMENT (vala_statement_get_type ())
954
1026
#define VALA_STATEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_STATEMENT, ValaStatement))
955
1027
#define VALA_IS_STATEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VALA_TYPE_STATEMENT))
958
1030
typedef struct _ValaStatement ValaStatement;
959
1031
typedef struct _ValaStatementIface ValaStatementIface;
1033
#define VALA_TYPE_ASSIGNMENT_OPERATOR (vala_assignment_operator_get_type ())
961
1035
#define VALA_TYPE_METHOD_TYPE (vala_method_type_get_type ())
962
1036
#define VALA_METHOD_TYPE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VALA_TYPE_METHOD_TYPE, ValaMethodType))
963
1037
#define VALA_METHOD_TYPE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VALA_TYPE_METHOD_TYPE, ValaMethodTypeClass))
1073
1147
void (*visit_try_statement) (ValaCodeVisitor* self, ValaTryStatement* stmt);
1074
1148
void (*visit_catch_clause) (ValaCodeVisitor* self, ValaCatchClause* clause);
1075
1149
void (*visit_lock_statement) (ValaCodeVisitor* self, ValaLockStatement* stmt);
1150
void (*visit_unlock_statement) (ValaCodeVisitor* self, ValaUnlockStatement* stmt);
1076
1151
void (*visit_delete_statement) (ValaCodeVisitor* self, ValaDeleteStatement* stmt);
1077
1152
void (*visit_expression) (ValaCodeVisitor* self, ValaExpression* expr);
1078
1153
void (*visit_array_creation_expression) (ValaCodeVisitor* self, ValaArrayCreationExpression* expr);
1080
1155
void (*visit_character_literal) (ValaCodeVisitor* self, ValaCharacterLiteral* lit);
1081
1156
void (*visit_integer_literal) (ValaCodeVisitor* self, ValaIntegerLiteral* lit);
1082
1157
void (*visit_real_literal) (ValaCodeVisitor* self, ValaRealLiteral* lit);
1158
void (*visit_regex_literal) (ValaCodeVisitor* self, ValaRegexLiteral* lit);
1083
1159
void (*visit_string_literal) (ValaCodeVisitor* self, ValaStringLiteral* lit);
1084
1160
void (*visit_template) (ValaCodeVisitor* self, ValaTemplate* tmpl);
1161
void (*visit_list_literal) (ValaCodeVisitor* self, ValaListLiteral* lit);
1162
void (*visit_set_literal) (ValaCodeVisitor* self, ValaSetLiteral* lit);
1163
void (*visit_map_literal) (ValaCodeVisitor* self, ValaMapLiteral* lit);
1164
void (*visit_tuple) (ValaCodeVisitor* self, ValaTuple* tuple);
1085
1165
void (*visit_null_literal) (ValaCodeVisitor* self, ValaNullLiteral* lit);
1086
1166
void (*visit_member_access) (ValaCodeVisitor* self, ValaMemberAccess* expr);
1087
1167
void (*visit_method_call) (ValaCodeVisitor* self, ValaMethodCall* expr);
1148
1231
MEMBER_BINDING_STATIC
1149
1232
} MemberBinding;
1236
VALA_PROFILE_GOBJECT,
1151
1240
struct _ValaStatementIface {
1152
1241
GTypeInterface parent_iface;
1245
VALA_ASSIGNMENT_OPERATOR_NONE,
1246
VALA_ASSIGNMENT_OPERATOR_SIMPLE,
1247
VALA_ASSIGNMENT_OPERATOR_BITWISE_OR,
1248
VALA_ASSIGNMENT_OPERATOR_BITWISE_AND,
1249
VALA_ASSIGNMENT_OPERATOR_BITWISE_XOR,
1250
VALA_ASSIGNMENT_OPERATOR_ADD,
1251
VALA_ASSIGNMENT_OPERATOR_SUB,
1252
VALA_ASSIGNMENT_OPERATOR_MUL,
1253
VALA_ASSIGNMENT_OPERATOR_DIV,
1254
VALA_ASSIGNMENT_OPERATOR_PERCENT,
1255
VALA_ASSIGNMENT_OPERATOR_SHIFT_LEFT,
1256
VALA_ASSIGNMENT_OPERATOR_SHIFT_RIGHT
1257
} ValaAssignmentOperator;
1156
1260
static gpointer vala_lambda_expression_parent_class = NULL;
1159
1263
void vala_code_node_unref (gpointer instance);
1160
1264
GParamSpec* vala_param_spec_code_node (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
1161
1265
void vala_value_set_code_node (GValue* value, gpointer v_object);
1266
void vala_value_take_code_node (GValue* value, gpointer v_object);
1162
1267
gpointer vala_value_get_code_node (const GValue* value);
1163
1268
GType vala_code_node_get_type (void);
1164
1269
gpointer vala_code_visitor_ref (gpointer instance);
1165
1270
void vala_code_visitor_unref (gpointer instance);
1166
1271
GParamSpec* vala_param_spec_code_visitor (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
1167
1272
void vala_value_set_code_visitor (GValue* value, gpointer v_object);
1273
void vala_value_take_code_visitor (GValue* value, gpointer v_object);
1168
1274
gpointer vala_value_get_code_visitor (const GValue* value);
1169
1275
GType vala_code_visitor_get_type (void);
1170
1276
GType vala_semantic_analyzer_get_type (void);
1186
1292
void vala_source_reference_unref (gpointer instance);
1187
1293
GParamSpec* vala_param_spec_source_reference (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
1188
1294
void vala_value_set_source_reference (GValue* value, gpointer v_object);
1295
void vala_value_take_source_reference (GValue* value, gpointer v_object);
1189
1296
gpointer vala_value_get_source_reference (const GValue* value);
1190
1297
GType vala_source_reference_get_type (void);
1191
1298
void vala_code_node_set_source_reference (ValaCodeNode* self, ValaSourceReference* value);
1211
1318
void vala_source_file_unref (gpointer instance);
1212
1319
GParamSpec* vala_param_spec_source_file (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
1213
1320
void vala_value_set_source_file (GValue* value, gpointer v_object);
1321
void vala_value_take_source_file (GValue* value, gpointer v_object);
1214
1322
gpointer vala_value_get_source_file (const GValue* value);
1215
1323
GType vala_source_file_get_type (void);
1216
1324
GType vala_namespace_get_type (void);
1263
1372
GType vala_character_literal_get_type (void);
1264
1373
GType vala_integer_literal_get_type (void);
1265
1374
GType vala_real_literal_get_type (void);
1375
GType vala_regex_literal_get_type (void);
1266
1376
GType vala_string_literal_get_type (void);
1267
1377
GType vala_template_get_type (void);
1378
GType vala_list_literal_get_type (void);
1379
GType vala_set_literal_get_type (void);
1380
GType vala_map_literal_get_type (void);
1381
GType vala_tuple_get_type (void);
1268
1382
GType vala_null_literal_get_type (void);
1269
1383
GType vala_member_access_get_type (void);
1270
1384
GType vala_method_call_get_type (void);
1302
1416
void vala_comment_unref (gpointer instance);
1303
1417
GParamSpec* vala_param_spec_comment (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
1304
1418
void vala_value_set_comment (GValue* value, gpointer v_object);
1419
void vala_value_take_comment (GValue* value, gpointer v_object);
1305
1420
gpointer vala_value_get_comment (const GValue* value);
1306
1421
GType vala_comment_get_type (void);
1307
1422
ValaMethod* vala_method_new (const char* name, ValaDataType* return_type, ValaSourceReference* source_reference, ValaComment* comment);
1323
1438
void vala_scope_unref (gpointer instance);
1324
1439
GParamSpec* vala_param_spec_scope (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
1325
1440
void vala_value_set_scope (GValue* value, gpointer v_object);
1441
void vala_value_take_scope (GValue* value, gpointer v_object);
1326
1442
gpointer vala_value_get_scope (const GValue* value);
1327
1443
GType vala_scope_get_type (void);
1328
1444
ValaScope* vala_symbol_get_scope (ValaSymbol* self);
1341
1457
void vala_scope_set_parent_scope (ValaScope* self, ValaScope* value);
1342
1458
ValaDataType* vala_method_get_return_type (ValaMethod* self);
1343
1459
ValaTypeSymbol* vala_data_type_get_data_type (ValaDataType* self);
1460
gpointer vala_code_context_ref (gpointer instance);
1461
void vala_code_context_unref (gpointer instance);
1462
GParamSpec* vala_param_spec_code_context (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
1463
void vala_value_set_code_context (GValue* value, gpointer v_object);
1464
void vala_value_take_code_context (GValue* value, gpointer v_object);
1465
gpointer vala_value_get_code_context (const GValue* value);
1466
GType vala_code_context_get_type (void);
1467
ValaCodeContext* vala_semantic_analyzer_get_context (ValaSemanticAnalyzer* self);
1468
GType vala_profile_get_type (void);
1469
ValaProfile vala_code_context_get_profile (ValaCodeContext* self);
1344
1470
GType vala_statement_get_type (void);
1345
1471
void vala_block_add_statement (ValaBlock* self, ValaStatement* stmt);
1472
ValaMemberAccess* vala_member_access_new_simple (const char* member_name, ValaSourceReference* source_reference);
1473
ValaMemberAccess* vala_member_access_construct_simple (GType object_type, const char* member_name, ValaSourceReference* source_reference);
1474
GType vala_assignment_operator_get_type (void);
1475
ValaAssignment* vala_assignment_new (ValaExpression* left, ValaExpression* right, ValaAssignmentOperator operator, ValaSourceReference* source_reference);
1476
ValaAssignment* vala_assignment_construct (GType object_type, ValaExpression* left, ValaExpression* right, ValaAssignmentOperator operator, ValaSourceReference* source_reference);
1477
ValaExpressionStatement* vala_expression_statement_new (ValaExpression* expression, ValaSourceReference* source_reference);
1478
ValaExpressionStatement* vala_expression_statement_construct (GType object_type, ValaExpression* expression, ValaSourceReference* source_reference);
1346
1479
ValaReturnStatement* vala_return_statement_new (ValaExpression* return_expression, ValaSourceReference* source_reference);
1347
1480
ValaReturnStatement* vala_return_statement_construct (GType object_type, ValaExpression* return_expression, ValaSourceReference* source_reference);
1348
ValaExpressionStatement* vala_expression_statement_new (ValaExpression* expression, ValaSourceReference* source_reference);
1349
ValaExpressionStatement* vala_expression_statement_construct (GType object_type, ValaExpression* expression, ValaSourceReference* source_reference);
1350
1481
void vala_method_set_body (ValaMethod* self, ValaBlock* value);
1351
1482
ValaBlock* vala_method_get_body (ValaMethod* self);
1352
1483
void vala_expression_set_symbol_reference (ValaExpression* self, ValaSymbol* value);
1539
static gpointer _vala_collection_object_ref0 (gpointer self) {
1540
return self ? vala_collection_object_ref (self) : NULL;
1408
1544
ValaList* vala_lambda_expression_get_parameters (ValaLambdaExpression* self) {
1545
ValaList* result = NULL;
1410
1546
g_return_val_if_fail (self != NULL, NULL);
1411
result = (ValaList*) vala_read_only_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, self->priv->parameters);
1547
result = _vala_collection_object_ref0 (self->priv->parameters);
1620
1756
block = vala_block_new (vala_code_node_get_source_reference ((ValaCodeNode*) self));
1621
1757
vala_scope_set_parent_scope (vala_symbol_get_scope ((ValaSymbol*) block), vala_symbol_get_scope ((ValaSymbol*) self->priv->_method));
1622
1758
if (vala_data_type_get_data_type (vala_method_get_return_type (self->priv->_method)) != NULL) {
1623
ValaReturnStatement* _tmp11_;
1624
vala_block_add_statement (block, (ValaStatement*) (_tmp11_ = vala_return_statement_new (self->priv->_expression_body, vala_code_node_get_source_reference ((ValaCodeNode*) self))));
1625
_vala_code_node_unref0 (_tmp11_);
1759
if (vala_code_context_get_profile (vala_semantic_analyzer_get_context (analyzer)) == VALA_PROFILE_DOVA) {
1760
ValaExpressionStatement* _tmp13_;
1761
ValaAssignment* _tmp12_;
1762
ValaMemberAccess* _tmp11_;
1763
ValaReturnStatement* _tmp14_;
1764
vala_block_add_statement (block, (ValaStatement*) (_tmp13_ = vala_expression_statement_new ((ValaExpression*) (_tmp12_ = vala_assignment_new ((ValaExpression*) (_tmp11_ = vala_member_access_new_simple ("result", vala_code_node_get_source_reference ((ValaCodeNode*) self))), self->priv->_expression_body, VALA_ASSIGNMENT_OPERATOR_SIMPLE, vala_code_node_get_source_reference ((ValaCodeNode*) self))), vala_code_node_get_source_reference ((ValaCodeNode*) self))));
1765
_vala_code_node_unref0 (_tmp13_);
1766
_vala_code_node_unref0 (_tmp12_);
1767
_vala_code_node_unref0 (_tmp11_);
1768
vala_block_add_statement (block, (ValaStatement*) (_tmp14_ = vala_return_statement_new (NULL, vala_code_node_get_source_reference ((ValaCodeNode*) self))));
1769
_vala_code_node_unref0 (_tmp14_);
1771
ValaReturnStatement* _tmp15_;
1772
vala_block_add_statement (block, (ValaStatement*) (_tmp15_ = vala_return_statement_new (self->priv->_expression_body, vala_code_node_get_source_reference ((ValaCodeNode*) self))));
1773
_vala_code_node_unref0 (_tmp15_);
1627
ValaExpressionStatement* _tmp12_;
1628
vala_block_add_statement (block, (ValaStatement*) (_tmp12_ = vala_expression_statement_new (self->priv->_expression_body, vala_code_node_get_source_reference ((ValaCodeNode*) self))));
1629
_vala_code_node_unref0 (_tmp12_);
1776
ValaExpressionStatement* _tmp16_;
1777
vala_block_add_statement (block, (ValaStatement*) (_tmp16_ = vala_expression_statement_new (self->priv->_expression_body, vala_code_node_get_source_reference ((ValaCodeNode*) self))));
1778
_vala_code_node_unref0 (_tmp16_);
1631
1780
vala_method_set_body (self->priv->_method, block);
1632
1781
_vala_code_node_unref0 (block);
1636
1785
vala_symbol_set_owner ((ValaSymbol*) vala_method_get_body (self->priv->_method), vala_symbol_get_scope ((ValaSymbol*) self->priv->_method));
1637
1786
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) self->priv->_method);
1638
1787
vala_code_node_check ((ValaCodeNode*) self->priv->_method, analyzer);
1639
vala_expression_set_value_type ((ValaExpression*) self, (ValaDataType*) (_tmp13_ = vala_method_type_new (self->priv->_method)));
1640
_vala_code_node_unref0 (_tmp13_);
1788
vala_expression_set_value_type ((ValaExpression*) self, (ValaDataType*) (_tmp17_ = vala_method_type_new (self->priv->_method)));
1789
_vala_code_node_unref0 (_tmp17_);
1641
1790
vala_data_type_set_value_owned (vala_expression_get_value_type ((ValaExpression*) self), vala_data_type_get_value_owned (vala_expression_get_target_type ((ValaExpression*) self)));
1642
1791
result = !vala_code_node_get_error ((ValaCodeNode*) self);
1643
1792
_vala_code_node_unref0 (cb);
1734
1883
GType vala_lambda_expression_get_type (void) {
1735
static GType vala_lambda_expression_type_id = 0;
1736
if (vala_lambda_expression_type_id == 0) {
1884
static volatile gsize vala_lambda_expression_type_id__volatile = 0;
1885
if (g_once_init_enter (&vala_lambda_expression_type_id__volatile)) {
1737
1886
static const GTypeInfo g_define_type_info = { sizeof (ValaLambdaExpressionClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) vala_lambda_expression_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ValaLambdaExpression), 0, (GInstanceInitFunc) vala_lambda_expression_instance_init, NULL };
1887
GType vala_lambda_expression_type_id;
1738
1888
vala_lambda_expression_type_id = g_type_register_static (VALA_TYPE_EXPRESSION, "ValaLambdaExpression", &g_define_type_info, 0);
1889
g_once_init_leave (&vala_lambda_expression_type_id__volatile, vala_lambda_expression_type_id);
1740
return vala_lambda_expression_type_id;
1891
return vala_lambda_expression_type_id__volatile;