~ubuntu-branches/ubuntu/quantal/vala/quantal

« back to all changes in this revision

Viewing changes to codegen/valadovaerrormodule.c

  • Committer: Bazaar Package Importer
  • Author(s): Michael Terry
  • Date: 2011-01-18 09:51:15 UTC
  • mfrom: (1.5.14 upstream)
  • Revision ID: james.westby@ubuntu.com-20110118095115-r2jr7c63lr0jzj0y
Tags: 0.11.4-0ubuntu1
New upstream release

Show diffs side-by-side

added added

removed removed

Lines of Context:
212
212
        void (*generate_cparameters) (ValaDovaBaseModule* self, ValaMethod* m, ValaCCodeFile* decl_space, ValaCCodeFunction* func, ValaCCodeFunctionDeclarator* vdeclarator, ValaCCodeFunctionCall* vcall);
213
213
        void (*generate_property_accessor_declaration) (ValaDovaBaseModule* self, ValaPropertyAccessor* acc, ValaCCodeFile* decl_space);
214
214
        ValaCCodeExpression* (*get_dup_func_expression) (ValaDovaBaseModule* self, ValaDataType* type, ValaSourceReference* source_reference, gboolean is_chainup);
215
 
        void (*append_local_free) (ValaDovaBaseModule* self, ValaSymbol* sym, gboolean stop_at_loop);
 
215
        void (*append_local_free) (ValaDovaBaseModule* self, ValaSymbol* sym, gboolean stop_at_loop, ValaCodeNode* stop_at);
216
216
        ValaCCodeExpression* (*get_ref_cexpression) (ValaDovaBaseModule* self, ValaDataType* expression_type, ValaCCodeExpression* cexpr, ValaExpression* expr, ValaCodeNode* node);
217
217
        void (*generate_class_declaration) (ValaDovaBaseModule* self, ValaClass* cl, ValaCCodeFile* decl_space);
218
218
        void (*generate_interface_declaration) (ValaDovaBaseModule* self, ValaInterface* iface, ValaCCodeFile* decl_space);
359
359
ValaCCodeExpression* vala_dova_base_module_get_cvalue (ValaDovaBaseModule* self, ValaExpression* expr);
360
360
void vala_dova_base_module_add_simple_check (ValaDovaBaseModule* self, ValaCodeNode* node, gboolean always_fails);
361
361
void vala_dova_error_module_return_with_exception (ValaDovaErrorModule* self);
362
 
void vala_dova_base_module_append_local_free (ValaDovaBaseModule* self, ValaSymbol* sym, gboolean stop_at_loop);
 
362
void vala_dova_base_module_append_local_free (ValaDovaBaseModule* self, ValaSymbol* sym, gboolean stop_at_loop, ValaCodeNode* stop_at);
363
363
ValaSymbol* vala_dova_base_module_get_current_symbol (ValaDovaBaseModule* self);
364
364
ValaMethod* vala_dova_base_module_get_current_method (ValaDovaBaseModule* self);
365
365
ValaDataType* vala_dova_base_module_get_current_return_type (ValaDovaBaseModule* self);
368
368
static gboolean vala_dova_error_module_in_finally_block (ValaDovaErrorModule* self, ValaCodeNode* node);
369
369
static void vala_dova_error_module_real_add_simple_check (ValaDovaBaseModule* base, ValaCodeNode* node, gboolean always_fails);
370
370
ValaTryStatement* vala_dova_base_module_get_current_try (ValaDovaBaseModule* self);
371
 
void vala_dova_base_module_append_error_free (ValaDovaBaseModule* self, ValaSymbol* sym, ValaTryStatement* current_try);
372
371
static void vala_dova_error_module_real_visit_try_statement (ValaCodeVisitor* base, ValaTryStatement* stmt);
373
372
void vala_dova_base_module_set_current_try (ValaDovaBaseModule* self, ValaTryStatement* value);
374
373
static void vala_dova_error_module_real_visit_catch_clause (ValaCodeVisitor* base, ValaCatchClause* clause);
375
374
void vala_dova_base_module_generate_type_declaration (ValaDovaBaseModule* self, ValaDataType* type, ValaCCodeFile* decl_space);
376
375
gchar* vala_dova_base_module_get_variable_cname (ValaDovaBaseModule* self, const gchar* name);
377
 
static void vala_dova_error_module_real_append_local_free (ValaDovaBaseModule* base, ValaSymbol* sym, gboolean stop_at_loop);
 
376
static void vala_dova_error_module_real_append_local_free (ValaDovaBaseModule* base, ValaSymbol* sym, gboolean stop_at_loop, ValaCodeNode* stop_at);
378
377
ValaDovaErrorModule* vala_dova_error_module_new (void);
379
378
ValaDovaErrorModule* vala_dova_error_module_construct (GType object_type);
380
379
ValaDovaDelegateModule* vala_dova_delegate_module_new (void);
421
420
        ValaMethod* _tmp2_ = NULL;
422
421
        g_return_if_fail (self != NULL);
423
422
        _tmp0_ = vala_dova_base_module_get_current_symbol ((ValaDovaBaseModule*) self);
424
 
        vala_dova_base_module_append_local_free ((ValaDovaBaseModule*) self, _tmp0_, FALSE);
 
423
        vala_dova_base_module_append_local_free ((ValaDovaBaseModule*) self, _tmp0_, FALSE, NULL);
425
424
        _tmp2_ = vala_dova_base_module_get_current_method ((ValaDovaBaseModule*) self);
426
425
        if (VALA_IS_CREATION_METHOD (_tmp2_)) {
427
426
                ValaMethod* _tmp3_ = NULL;
497
496
        ValaMethod* _tmp1_ = NULL;
498
497
        g_return_if_fail (self != NULL);
499
498
        _tmp0_ = vala_dova_base_module_get_current_symbol ((ValaDovaBaseModule*) self);
500
 
        vala_dova_base_module_append_local_free ((ValaDovaBaseModule*) self, _tmp0_, FALSE);
 
499
        vala_dova_base_module_append_local_free ((ValaDovaBaseModule*) self, _tmp0_, FALSE, NULL);
501
500
        _tmp1_ = vala_dova_base_module_get_current_method ((ValaDovaBaseModule*) self);
502
501
        if (VALA_IS_CREATION_METHOD (_tmp1_)) {
503
502
                ValaCCodeFunction* _tmp2_ = NULL;
623
622
                gboolean has_general_catch_clause;
624
623
                _tmp8_ = vala_dova_base_module_get_current_symbol ((ValaDovaBaseModule*) self);
625
624
                _tmp9_ = vala_dova_base_module_get_current_try ((ValaDovaBaseModule*) self);
626
 
                vala_dova_base_module_append_error_free ((ValaDovaBaseModule*) self, _tmp8_, _tmp9_);
 
625
                vala_dova_base_module_append_local_free ((ValaDovaBaseModule*) self, _tmp8_, FALSE, (ValaCodeNode*) _tmp9_);
627
626
                _tmp10_ = vala_array_list_new (VALA_TYPE_DATA_TYPE, (GBoxedCopyFunc) vala_code_node_ref, vala_code_node_unref, g_direct_equal);
628
627
                error_types = _tmp10_;
629
628
                {
1239
1238
}
1240
1239
 
1241
1240
 
1242
 
static void vala_dova_error_module_real_append_local_free (ValaDovaBaseModule* base, ValaSymbol* sym, gboolean stop_at_loop) {
 
1241
static void vala_dova_error_module_real_append_local_free (ValaDovaBaseModule* base, ValaSymbol* sym, gboolean stop_at_loop, ValaCodeNode* stop_at) {
1243
1242
        ValaDovaErrorModule * self;
1244
1243
        ValaBlock* _tmp0_;
1245
1244
        ValaBlock* finally_block;
1283
1282
        if (finally_block != NULL) {
1284
1283
                vala_code_node_emit ((ValaCodeNode*) finally_block, (ValaCodeGenerator*) self);
1285
1284
        }
1286
 
        VALA_DOVA_BASE_MODULE_CLASS (vala_dova_error_module_parent_class)->append_local_free ((ValaDovaBaseModule*) VALA_DOVA_DELEGATE_MODULE (self), sym, stop_at_loop);
 
1285
        VALA_DOVA_BASE_MODULE_CLASS (vala_dova_error_module_parent_class)->append_local_free ((ValaDovaBaseModule*) VALA_DOVA_DELEGATE_MODULE (self), sym, stop_at_loop, stop_at);
1287
1286
        _vala_code_node_unref0 (finally_block);
1288
1287
}
1289
1288