From 0a579898ac7c872919bf75dd6964721dad04f25c Mon Sep 17 00:00:00 2001 From: Juerg Billeter Date: Sun, 6 Apr 2008 18:33:46 +0000 Subject: [PATCH] Add source_type_declaration and source_type_definition code fragments to 2008-04-06 Juerg Billeter * gobject/valaccodegenerator.vala, gobject/valaccodegeneratorclass.vala, gobject/valaccodegeneratorinterface.vala, gobject/valaccodegeneratorsourcefile.vala, gobject/valaccodegeneratorstruct.vala: Add source_type_declaration and source_type_definition code fragments to fix declaration order in generated C source files svn path=/trunk/; revision=1166 --- ChangeLog | 11 +++++++++++ gobject/valaccodegenerator.vala | 8 +++++--- gobject/valaccodegeneratorclass.vala | 4 ++-- gobject/valaccodegeneratorinterface.vala | 4 ++-- gobject/valaccodegeneratorsourcefile.vala | 8 ++++++++ gobject/valaccodegeneratorstruct.vala | 4 ++-- 6 files changed, 30 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index 11677d7..a90f5be 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2008-04-06 Jürg Billeter + + * gobject/valaccodegenerator.vala, + gobject/valaccodegeneratorclass.vala, + gobject/valaccodegeneratorinterface.vala, + gobject/valaccodegeneratorsourcefile.vala, + gobject/valaccodegeneratorstruct.vala: + + Add source_type_declaration and source_type_definition code + fragments to fix declaration order in generated C source files + 2008-03-31 Jürg Billeter * vala/Makefile.am, vala/parser.y, vala/vala.h, diff --git a/gobject/valaccodegenerator.vala b/gobject/valaccodegenerator.vala index eade698..4badf98 100644 --- a/gobject/valaccodegenerator.vala +++ b/gobject/valaccodegenerator.vala @@ -46,6 +46,8 @@ public class Vala.CCodeGenerator : CodeGenerator { CCodeFragment header_constant_declaration; CCodeFragment source_begin; CCodeFragment source_include_directives; + CCodeFragment source_type_declaration; + CCodeFragment source_type_definition; public CCodeFragment source_type_member_declaration; CCodeFragment source_constant_declaration; CCodeFragment source_signal_marshaller_declaration; @@ -282,8 +284,8 @@ public class Vala.CCodeGenerator : CodeGenerator { decl_frag = header_type_declaration; def_frag = header_type_definition; } else { - decl_frag = source_type_member_declaration; - def_frag = source_type_member_declaration; + decl_frag = source_type_declaration; + def_frag = source_type_definition; } def_frag.append (cenum); @@ -436,7 +438,7 @@ public class Vala.CCodeGenerator : CodeGenerator { if (!d.is_internal_symbol ()) { header_type_declaration.append (ctypedef); } else { - source_type_member_declaration.append (ctypedef); + source_type_declaration.append (ctypedef); } } diff --git a/gobject/valaccodegeneratorclass.vala b/gobject/valaccodegeneratorclass.vala index 4c0bf64..bd3b358 100644 --- a/gobject/valaccodegeneratorclass.vala +++ b/gobject/valaccodegeneratorclass.vala @@ -66,8 +66,8 @@ public class Vala.CCodeGenerator { decl_frag = header_type_declaration; def_frag = header_type_definition; } else { - decl_frag = source_type_member_declaration; - def_frag = source_type_member_declaration; + decl_frag = source_type_declaration; + def_frag = source_type_definition; } if (is_gtypeinstance) { diff --git a/gobject/valaccodegeneratorinterface.vala b/gobject/valaccodegeneratorinterface.vala index 66e4d2e..00a517f 100644 --- a/gobject/valaccodegeneratorinterface.vala +++ b/gobject/valaccodegeneratorinterface.vala @@ -40,8 +40,8 @@ public class Vala.CCodeGenerator { decl_frag = header_type_declaration; def_frag = header_type_definition; } else { - decl_frag = source_type_member_declaration; - def_frag = source_type_member_declaration; + decl_frag = source_type_declaration; + def_frag = source_type_definition; } if (!iface.is_static && !iface.declaration_only) { diff --git a/gobject/valaccodegeneratorsourcefile.vala b/gobject/valaccodegeneratorsourcefile.vala index 6dd0578..5cd0d0d 100644 --- a/gobject/valaccodegeneratorsourcefile.vala +++ b/gobject/valaccodegeneratorsourcefile.vala @@ -180,6 +180,8 @@ public class Vala.CCodeGenerator { header_constant_declaration = new CCodeFragment (); source_begin = new CCodeFragment (); source_include_directives = new CCodeFragment (); + source_type_declaration = new CCodeFragment (); + source_type_definition = new CCodeFragment (); source_type_member_declaration = new CCodeFragment (); source_constant_declaration = new CCodeFragment (); source_type_member_definition = new CCodeFragment (); @@ -324,6 +326,10 @@ public class Vala.CCodeGenerator { writer.write_newline (); source_include_directives.write (writer); writer.write_newline (); + source_type_declaration.write_combined (writer); + writer.write_newline (); + source_type_definition.write_combined (writer); + writer.write_newline (); source_type_member_declaration.write_declaration (writer); writer.write_newline (); source_type_member_declaration.write (writer); @@ -346,6 +352,8 @@ public class Vala.CCodeGenerator { header_constant_declaration = null; source_begin = null; source_include_directives = null; + source_type_declaration = null; + source_type_definition = null; source_type_member_declaration = null; source_constant_declaration = null; source_type_member_definition = null; diff --git a/gobject/valaccodegeneratorstruct.vala b/gobject/valaccodegeneratorstruct.vala index fcc20de..f6375ef 100644 --- a/gobject/valaccodegeneratorstruct.vala +++ b/gobject/valaccodegeneratorstruct.vala @@ -38,8 +38,8 @@ public class Vala.CCodeGenerator { decl_frag = header_type_declaration; def_frag = header_type_definition; } else { - decl_frag = source_type_member_declaration; - def_frag = source_type_member_declaration; + decl_frag = source_type_declaration; + def_frag = source_type_definition; } if (st.source_reference.file.cycle == null) { -- 2.7.4