bef09283bf8a10e5a2efa192600d2a1df91774c7
[app.Builder.js] / Project / Project.vala.c
1 /* Project.vala.c generated by valac 0.20.1, the Vala compiler
2  * generated from Project.vala, do not modify */
3
4 /*<Script type="text/javascript">*/
5
6 #include <glib.h>
7 #include <glib-object.h>
8 #include <gee.h>
9 #include <stdlib.h>
10 #include <string.h>
11 #include <gio/gio.h>
12 #include <json-glib/json-glib.h>
13 #include <glib/gstdio.h>
14
15
16 #define PROJECT_TYPE_PROJECT (project_project_get_type ())
17 #define PROJECT_PROJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROJECT_TYPE_PROJECT, ProjectProject))
18 #define PROJECT_PROJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROJECT_TYPE_PROJECT, ProjectProjectClass))
19 #define PROJECT_IS_PROJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROJECT_TYPE_PROJECT))
20 #define PROJECT_IS_PROJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROJECT_TYPE_PROJECT))
21 #define PROJECT_PROJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROJECT_TYPE_PROJECT, ProjectProjectClass))
22
23 typedef struct _ProjectProject ProjectProject;
24 typedef struct _ProjectProjectClass ProjectProjectClass;
25 typedef struct _ProjectProjectPrivate ProjectProjectPrivate;
26
27 #define JS_RENDER_TYPE_JS_RENDER (js_render_js_render_get_type ())
28 #define JS_RENDER_JS_RENDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JS_RENDER_TYPE_JS_RENDER, JsRenderJsRender))
29 #define JS_RENDER_JS_RENDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JS_RENDER_TYPE_JS_RENDER, JsRenderJsRenderClass))
30 #define JS_RENDER_IS_JS_RENDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JS_RENDER_TYPE_JS_RENDER))
31 #define JS_RENDER_IS_JS_RENDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JS_RENDER_TYPE_JS_RENDER))
32 #define JS_RENDER_JS_RENDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JS_RENDER_TYPE_JS_RENDER, JsRenderJsRenderClass))
33
34 typedef struct _JsRenderJsRender JsRenderJsRender;
35 typedef struct _JsRenderJsRenderClass JsRenderJsRenderClass;
36 #define _g_free0(var) (var = (g_free (var), NULL))
37 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
38 #define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
39 typedef struct _Block2Data Block2Data;
40 #define __vala_JsonNode_free0(var) ((var == NULL) ? NULL : (var = (_vala_JsonNode_free (var), NULL)))
41 #define __vala_JsonObject_free0(var) ((var == NULL) ? NULL : (var = (_vala_JsonObject_free (var), NULL)))
42
43 #define PROJECT_TYPE_GTK (project_gtk_get_type ())
44 #define PROJECT_GTK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROJECT_TYPE_GTK, ProjectGtk))
45 #define PROJECT_GTK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROJECT_TYPE_GTK, ProjectGtkClass))
46 #define PROJECT_IS_GTK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROJECT_TYPE_GTK))
47 #define PROJECT_IS_GTK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROJECT_TYPE_GTK))
48 #define PROJECT_GTK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROJECT_TYPE_GTK, ProjectGtkClass))
49
50 typedef struct _ProjectGtk ProjectGtk;
51 typedef struct _ProjectGtkClass ProjectGtkClass;
52
53 #define PROJECT_TYPE_ROO (project_roo_get_type ())
54 #define PROJECT_ROO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROJECT_TYPE_ROO, ProjectRoo))
55 #define PROJECT_ROO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROJECT_TYPE_ROO, ProjectRooClass))
56 #define PROJECT_IS_ROO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROJECT_TYPE_ROO))
57 #define PROJECT_IS_ROO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROJECT_TYPE_ROO))
58 #define PROJECT_ROO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROJECT_TYPE_ROO, ProjectRooClass))
59
60 typedef struct _ProjectRoo ProjectRoo;
61 typedef struct _ProjectRooClass ProjectRooClass;
62 #define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL)))
63 typedef struct _JsRenderJsRenderPrivate JsRenderJsRenderPrivate;
64
65 #define JS_RENDER_TYPE_NODE (js_render_node_get_type ())
66 #define JS_RENDER_NODE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), JS_RENDER_TYPE_NODE, JsRenderNode))
67 #define JS_RENDER_NODE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), JS_RENDER_TYPE_NODE, JsRenderNodeClass))
68 #define JS_RENDER_IS_NODE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), JS_RENDER_TYPE_NODE))
69 #define JS_RENDER_IS_NODE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), JS_RENDER_TYPE_NODE))
70 #define JS_RENDER_NODE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), JS_RENDER_TYPE_NODE, JsRenderNodeClass))
71
72 typedef struct _JsRenderNode JsRenderNode;
73 typedef struct _JsRenderNodeClass JsRenderNodeClass;
74 #define __g_list_free__g_free0_0(var) ((var == NULL) ? NULL : (var = (_g_list_free__g_free0_ (var), NULL)))
75
76 typedef enum  {
77         PROJECT_ERROR_INVALID_TYPE,
78         PROJECT_ERROR_NEED_IMPLEMENTING,
79         PROJECT_ERROR_MISSING_FILE,
80         PROJECT_ERROR_INVALID_VALUE
81 } ProjectError;
82 #define PROJECT_ERROR project_error_quark ()
83 struct _ProjectProject {
84         GObject parent_instance;
85         ProjectProjectPrivate * priv;
86         gchar* id;
87         gchar* fn;
88         gchar* name;
89         gchar* runhtml;
90         gchar* base_template;
91         gchar* rootURL;
92         GeeHashMap* paths;
93         GeeHashMap* files;
94         gchar* xtype;
95 };
96
97 struct _ProjectProjectClass {
98         GObjectClass parent_class;
99 };
100
101 struct _ProjectProjectPrivate {
102         gboolean is_scanned;
103 };
104
105 struct _Block2Data {
106         int _ref_count_;
107         ProjectProject* proj;
108 };
109
110 struct _JsRenderJsRender {
111         GObject parent_instance;
112         JsRenderJsRenderPrivate * priv;
113         GeeArrayList* doubleStringProps;
114         gchar* id;
115         gchar* name;
116         gchar* fullname;
117         gchar* path;
118         gchar* parent;
119         gchar* region;
120         gchar* title;
121         gchar* permname;
122         gchar* modOrder;
123         gchar* xtype;
124         guint64 webkit_page_id;
125         ProjectProject* project;
126         JsRenderNode* tree;
127         GList* cn;
128         gboolean hasParent;
129 };
130
131 struct _JsRenderJsRenderClass {
132         GObjectClass parent_class;
133         void (*loadItems) (JsRenderJsRender* self, GError** error);
134         void (*save) (JsRenderJsRender* self);
135         void (*saveHTML) (JsRenderJsRender* self, const gchar* html);
136         gchar* (*toSource) (JsRenderJsRender* self);
137         gchar* (*toSourcePreview) (JsRenderJsRender* self);
138         gchar* (*toValaSource) (JsRenderJsRender* self, gboolean testcompile);
139 };
140
141
142 extern GeeHashMap* project_projects;
143 GeeHashMap* project_projects = NULL;
144 extern gboolean project_projects_loaded;
145 gboolean project_projects_loaded = FALSE;
146 static gpointer project_project_parent_class = NULL;
147
148 GQuark project_error_quark (void);
149 GType project_project_get_type (void) G_GNUC_CONST;
150 GType js_render_js_render_get_type (void) G_GNUC_CONST;
151 #define PROJECT_PROJECT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PROJECT_TYPE_PROJECT, ProjectProjectPrivate))
152 enum  {
153         PROJECT_PROJECT_DUMMY_PROPERTY
154 };
155 ProjectProject* project_project_new (const gchar* path);
156 ProjectProject* project_project_construct (GType object_type, const gchar* path);
157 void project_project_loadAll (gboolean force);
158 void project_project_factoryFromFile (const gchar* jsonfile);
159 GeeArrayList* project_project_allProjectsByName (void);
160 ProjectProject* project_project_getProject (const gchar* name);
161 static Block2Data* block2_data_ref (Block2Data* _data2_);
162 static void block2_data_unref (void * _userdata_);
163 static JsonNode* _vala_JsonNode_copy (JsonNode* self);
164 static void _vala_JsonNode_free (JsonNode* self);
165 static JsonObject* _vala_JsonObject_copy (JsonObject* self);
166 ProjectProject* project_project_factory (const gchar* xtype, const gchar* path);
167 static void __lambda2_ (Block2Data* _data2_, JsonObject* sobj, const gchar* key, JsonNode* val);
168 static void ___lambda2__json_object_foreach (JsonObject* object, const gchar* member_name, JsonNode* member_node, gpointer self);
169 static void _vala_JsonObject_free (JsonObject* self);
170 gboolean project_project_hasPath (ProjectProject* self, const gchar* path);
171 ProjectGtk* project_gtk_new (const gchar* path);
172 ProjectGtk* project_gtk_construct (GType object_type, const gchar* path);
173 GType project_gtk_get_type (void) G_GNUC_CONST;
174 ProjectRoo* project_roo_new (const gchar* path);
175 ProjectRoo* project_roo_construct (GType object_type, const gchar* path);
176 GType project_roo_get_type (void) G_GNUC_CONST;
177 void project_project_remove (ProjectProject* project);
178 void project_project_save (ProjectProject* self);
179 gchar* project_project_toJSON (ProjectProject* self, gboolean show_all);
180 gchar* project_project_firstPath (ProjectProject* self);
181 gchar* project_project_getName (ProjectProject* self);
182 GeeArrayList* project_project_sortedFiles (ProjectProject* self);
183 static gint __lambda3_ (gconstpointer fa, gconstpointer fb);
184 GType js_render_node_get_type (void) G_GNUC_CONST;
185 static gint ___lambda3__gcompare_func (gconstpointer a, gconstpointer b);
186 JsRenderJsRender* project_project_getByName (ProjectProject* self, const gchar* name);
187 JsRenderJsRender* project_project_getById (ProjectProject* self, const gchar* id);
188 JsRenderJsRender* project_project_newFile (ProjectProject* self, const gchar* name);
189 JsRenderJsRender* js_render_js_render_factory (const gchar* xt, ProjectProject* project, const gchar* path);
190 void project_project_addFile (ProjectProject* self, JsRenderJsRender* pfile);
191 JsRenderJsRender* project_project_loadFileOnly (ProjectProject* self, const gchar* path);
192 JsRenderJsRender* project_project_create (ProjectProject* self, const gchar* filename);
193 void js_render_js_render_save (JsRenderJsRender* self);
194 void project_project_add (ProjectProject* self, const gchar* path, const gchar* type);
195 void project_project_scanDir (ProjectProject* self, const gchar* dir, gint dp);
196 void project_project_scanDirs (ProjectProject* self);
197 void project_project_scanDirsForce (ProjectProject* self);
198 static void _g_free0_ (gpointer var);
199 static void _g_list_free__g_free0_ (GList* self);
200 static void project_project_finalize (GObject* obj);
201 static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
202 static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
203 static gint _vala_array_length (gpointer array);
204
205
206 GQuark project_error_quark (void) {
207         return g_quark_from_static_string ("project_error-quark");
208 }
209
210
211 ProjectProject* project_project_construct (GType object_type, const gchar* path) {
212         ProjectProject * self = NULL;
213         const gchar* _tmp0_;
214         gchar* _tmp1_ = NULL;
215         GeeHashMap* _tmp2_;
216         GeeHashMap* _tmp3_;
217         const gchar* _tmp4_;
218         gint _tmp5_;
219         gint _tmp6_;
220 #line 44 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
221         g_return_val_if_fail (path != NULL, NULL);
222 #line 44 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
223         self = (ProjectProject*) g_object_new (object_type, NULL);
224 #line 46 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
225         _tmp0_ = path;
226 #line 46 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
227         _tmp1_ = g_path_get_basename (_tmp0_);
228 #line 46 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
229         _g_free0 (self->name);
230 #line 46 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
231         self->name = _tmp1_;
232 #line 48 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
233         self->priv->is_scanned = FALSE;
234 #line 49 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
235         _tmp2_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, NULL, NULL, NULL);
236 #line 49 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
237         _g_object_unref0 (self->paths);
238 #line 49 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
239         self->paths = _tmp2_;
240 #line 50 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
241         _tmp3_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, JS_RENDER_TYPE_JS_RENDER, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL);
242 #line 50 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
243         _g_object_unref0 (self->files);
244 #line 50 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
245         self->files = _tmp3_;
246 #line 53 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
247         _tmp4_ = path;
248 #line 53 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
249         _tmp5_ = strlen (_tmp4_);
250 #line 53 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
251         _tmp6_ = _tmp5_;
252 #line 53 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
253         if (_tmp6_ > 0) {
254 #line 255 "Project.vala.c"
255                 GeeHashMap* _tmp7_;
256                 const gchar* _tmp8_;
257 #line 54 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
258                 _tmp7_ = self->paths;
259 #line 54 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
260                 _tmp8_ = path;
261 #line 54 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
262                 gee_abstract_map_set ((GeeAbstractMap*) _tmp7_, _tmp8_, "dir");
263 #line 264 "Project.vala.c"
264         }
265 #line 44 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
266         return self;
267 #line 268 "Project.vala.c"
268 }
269
270
271 ProjectProject* project_project_new (const gchar* path) {
272 #line 44 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
273         return project_project_construct (PROJECT_TYPE_PROJECT, path);
274 #line 275 "Project.vala.c"
275 }
276
277
278 void project_project_loadAll (gboolean force) {
279         gboolean _tmp0_ = FALSE;
280         gboolean _tmp1_;
281         gboolean _tmp3_;
282         const gchar* _tmp4_ = NULL;
283         gchar* _tmp5_;
284         gchar* dirname;
285         const gchar* _tmp6_;
286         GFile* _tmp7_ = NULL;
287         GFile* dir;
288         GFile* _tmp8_;
289         gboolean _tmp9_ = FALSE;
290         GeeHashMap* _tmp11_;
291         GError * _inner_error_ = NULL;
292 #line 67 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
293         _tmp1_ = project_projects_loaded;
294 #line 67 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
295         if (_tmp1_) {
296 #line 297 "Project.vala.c"
297                 gboolean _tmp2_;
298 #line 67 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
299                 _tmp2_ = force;
300 #line 67 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
301                 _tmp0_ = !_tmp2_;
302 #line 303 "Project.vala.c"
303         } else {
304 #line 67 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
305                 _tmp0_ = FALSE;
306 #line 307 "Project.vala.c"
307         }
308 #line 67 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
309         _tmp3_ = _tmp0_;
310 #line 67 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
311         if (_tmp3_) {
312 #line 68 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
313                 return;
314 #line 315 "Project.vala.c"
315         }
316 #line 71 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
317         _tmp4_ = g_get_home_dir ();
318 #line 71 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
319         _tmp5_ = g_strconcat (_tmp4_, "/.Builder", NULL);
320 #line 71 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
321         dirname = _tmp5_;
322 #line 72 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
323         _tmp6_ = dirname;
324 #line 72 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
325         _tmp7_ = g_file_new_for_path (_tmp6_);
326 #line 72 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
327         dir = _tmp7_;
328 #line 73 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
329         _tmp8_ = dir;
330 #line 73 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
331         _tmp9_ = g_file_query_exists (_tmp8_, NULL);
332 #line 73 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
333         if (!_tmp9_) {
334 #line 335 "Project.vala.c"
335                 GFile* _tmp10_;
336 #line 74 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
337                 _tmp10_ = dir;
338 #line 74 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
339                 g_file_make_directory (_tmp10_, NULL, &_inner_error_);
340 #line 74 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
341                 if (_inner_error_ != NULL) {
342 #line 74 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
343                         _g_object_unref0 (dir);
344 #line 74 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
345                         _g_free0 (dirname);
346 #line 74 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
347                         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);
348 #line 74 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
349                         g_clear_error (&_inner_error_);
350 #line 74 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
351                         return;
352 #line 353 "Project.vala.c"
353                 }
354 #line 75 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
355                 _g_object_unref0 (dir);
356 #line 75 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
357                 _g_free0 (dirname);
358 #line 75 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
359                 return;
360 #line 361 "Project.vala.c"
361         }
362 #line 77 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
363         _tmp11_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, PROJECT_TYPE_PROJECT, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL);
364 #line 77 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
365         _g_object_unref0 (project_projects);
366 #line 77 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
367         project_projects = _tmp11_;
368 #line 369 "Project.vala.c"
369         {
370                 GFile* _tmp12_;
371                 GFileEnumerator* _tmp13_ = NULL;
372                 GFileEnumerator* file_enum;
373                 GFileInfo* next_file = NULL;
374 #line 81 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
375                 _tmp12_ = dir;
376 #line 81 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
377                 _tmp13_ = g_file_enumerate_children (_tmp12_, G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME, G_FILE_QUERY_INFO_NONE, NULL, &_inner_error_);
378 #line 81 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
379                 file_enum = _tmp13_;
380 #line 81 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
381                 if (_inner_error_ != NULL) {
382 #line 81 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
383                         if (_inner_error_->domain == PROJECT_ERROR) {
384 #line 385 "Project.vala.c"
385                                 goto __catch9_project_error;
386                         }
387                         goto __finally9;
388                 }
389 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
390                 while (TRUE) {
391 #line 392 "Project.vala.c"
392                         GFileEnumerator* _tmp14_;
393                         GFileInfo* _tmp15_ = NULL;
394                         GFileInfo* _tmp16_;
395                         GFileInfo* _tmp17_;
396                         GFileInfo* _tmp18_;
397                         const gchar* _tmp19_ = NULL;
398                         gchar* _tmp20_;
399                         gchar* fn;
400                         const gchar* _tmp21_;
401                         gboolean _tmp22_ = FALSE;
402                         const gchar* _tmp23_;
403                         gchar* _tmp24_;
404                         gchar* _tmp25_;
405                         const gchar* _tmp26_;
406                         gchar* _tmp27_;
407                         gchar* _tmp28_;
408 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
409                         _tmp14_ = file_enum;
410 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
411                         _tmp15_ = g_file_enumerator_next_file (_tmp14_, NULL, &_inner_error_);
412 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
413                         _tmp16_ = _tmp15_;
414 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
415                         if (_inner_error_ != NULL) {
416 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
417                                 _g_object_unref0 (next_file);
418 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
419                                 _g_object_unref0 (file_enum);
420 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
421                                 if (_inner_error_->domain == PROJECT_ERROR) {
422 #line 423 "Project.vala.c"
423                                         goto __catch9_project_error;
424                                 }
425                                 goto __finally9;
426                         }
427 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
428                         _g_object_unref0 (next_file);
429 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
430                         next_file = _tmp16_;
431 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
432                         _tmp17_ = next_file;
433 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
434                         if (!(_tmp17_ != NULL)) {
435 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
436                                 break;
437 #line 438 "Project.vala.c"
438                         }
439 #line 90 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
440                         _tmp18_ = next_file;
441 #line 90 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
442                         _tmp19_ = g_file_info_get_display_name (_tmp18_);
443 #line 90 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
444                         _tmp20_ = g_strdup (_tmp19_);
445 #line 90 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
446                         fn = _tmp20_;
447 #line 91 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
448                         _tmp21_ = fn;
449 #line 91 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
450                         _tmp22_ = g_regex_match_simple ("\\.json$", _tmp21_, 0, 0);
451 #line 91 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
452                         if (!_tmp22_) {
453 #line 92 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
454                                 _g_free0 (fn);
455 #line 92 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
456                                 continue;
457 #line 458 "Project.vala.c"
458                         }
459 #line 94 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
460                         _tmp23_ = dirname;
461 #line 94 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
462                         _tmp24_ = g_strconcat (_tmp23_, "/", NULL);
463 #line 94 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
464                         _tmp25_ = _tmp24_;
465 #line 94 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
466                         _tmp26_ = fn;
467 #line 94 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
468                         _tmp27_ = g_strconcat (_tmp25_, _tmp26_, NULL);
469 #line 94 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
470                         _tmp28_ = _tmp27_;
471 #line 94 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
472                         project_project_factoryFromFile (_tmp28_);
473 #line 94 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
474                         _g_free0 (_tmp28_);
475 #line 94 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
476                         _g_free0 (_tmp25_);
477 #line 89 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
478                         _g_free0 (fn);
479 #line 480 "Project.vala.c"
480                 }
481 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
482                 _g_object_unref0 (next_file);
483 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
484                 _g_object_unref0 (file_enum);
485 #line 486 "Project.vala.c"
486         }
487         goto __finally9;
488         __catch9_project_error:
489         {
490                 GError* e = NULL;
491 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
492                 e = _inner_error_;
493 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
494                 _inner_error_ = NULL;
495 #line 97 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
496                 g_print ("oops - something went wrong scanning the projects\n");
497 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
498                 _g_error_free0 (e);
499 #line 500 "Project.vala.c"
500         }
501         __finally9:
502 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
503         if (_inner_error_ != NULL) {
504 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
505                 _g_object_unref0 (dir);
506 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
507                 _g_free0 (dirname);
508 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
509                 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);
510 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
511                 g_clear_error (&_inner_error_);
512 #line 80 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
513                 return;
514 #line 515 "Project.vala.c"
515         }
516 #line 65 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
517         _g_object_unref0 (dir);
518 #line 65 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
519         _g_free0 (dirname);
520 #line 521 "Project.vala.c"
521 }
522
523
524 GeeArrayList* project_project_allProjectsByName (void) {
525         GeeArrayList* result = NULL;
526         GeeArrayList* _tmp0_;
527         GeeArrayList* ret;
528         GeeHashMap* _tmp1_;
529         GeeMapIterator* _tmp2_ = NULL;
530         GeeMapIterator* iter;
531 #line 105 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
532         _tmp0_ = gee_array_list_new (PROJECT_TYPE_PROJECT, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL);
533 #line 105 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
534         ret = _tmp0_;
535 #line 106 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
536         _tmp1_ = project_projects;
537 #line 106 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
538         _tmp2_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp1_);
539 #line 106 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
540         iter = _tmp2_;
541 #line 107 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
542         while (TRUE) {
543 #line 544 "Project.vala.c"
544                 GeeMapIterator* _tmp3_;
545                 gboolean _tmp4_ = FALSE;
546                 GeeArrayList* _tmp5_;
547                 GeeMapIterator* _tmp6_;
548                 gpointer _tmp7_ = NULL;
549                 ProjectProject* _tmp8_;
550 #line 107 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
551                 _tmp3_ = iter;
552 #line 107 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
553                 _tmp4_ = gee_map_iterator_next (_tmp3_);
554 #line 107 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
555                 if (!_tmp4_) {
556 #line 107 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
557                         break;
558 #line 559 "Project.vala.c"
559                 }
560 #line 108 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
561                 _tmp5_ = ret;
562 #line 108 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
563                 _tmp6_ = iter;
564 #line 108 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
565                 _tmp7_ = gee_map_iterator_get_value (_tmp6_);
566 #line 108 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
567                 _tmp8_ = (ProjectProject*) _tmp7_;
568 #line 108 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
569                 gee_abstract_collection_add ((GeeAbstractCollection*) _tmp5_, _tmp8_);
570 #line 108 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
571                 _g_object_unref0 (_tmp8_);
572 #line 573 "Project.vala.c"
573         }
574 #line 111 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
575         result = ret;
576 #line 111 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
577         _g_object_unref0 (iter);
578 #line 111 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
579         return result;
580 #line 581 "Project.vala.c"
581 }
582
583
584 ProjectProject* project_project_getProject (const gchar* name) {
585         ProjectProject* result = NULL;
586         GeeHashMap* _tmp0_;
587         const gchar* _tmp1_;
588         gboolean _tmp2_ = FALSE;
589 #line 115 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
590         g_return_val_if_fail (name != NULL, NULL);
591 #line 117 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
592         _tmp0_ = project_projects;
593 #line 117 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
594         _tmp1_ = name;
595 #line 117 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
596         _tmp2_ = gee_abstract_map_has_key ((GeeAbstractMap*) _tmp0_, _tmp1_);
597 #line 117 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
598         if (_tmp2_) {
599 #line 600 "Project.vala.c"
600                 GeeHashMap* _tmp3_;
601                 const gchar* _tmp4_;
602                 gpointer _tmp5_ = NULL;
603 #line 118 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
604                 _tmp3_ = project_projects;
605 #line 118 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
606                 _tmp4_ = name;
607 #line 118 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
608                 _tmp5_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp3_, _tmp4_);
609 #line 118 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
610                 result = (ProjectProject*) _tmp5_;
611 #line 118 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
612                 return result;
613 #line 614 "Project.vala.c"
614         }
615 #line 120 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
616         result = NULL;
617 #line 120 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
618         return result;
619 #line 620 "Project.vala.c"
620 }
621
622
623 static Block2Data* block2_data_ref (Block2Data* _data2_) {
624 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
625         g_atomic_int_inc (&_data2_->_ref_count_);
626 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
627         return _data2_;
628 #line 629 "Project.vala.c"
629 }
630
631
632 static void block2_data_unref (void * _userdata_) {
633         Block2Data* _data2_;
634         _data2_ = (Block2Data*) _userdata_;
635 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
636         if (g_atomic_int_dec_and_test (&_data2_->_ref_count_)) {
637 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
638                 _g_object_unref0 (_data2_->proj);
639 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
640                 g_slice_free (Block2Data, _data2_);
641 #line 642 "Project.vala.c"
642         }
643 }
644
645
646 static JsonNode* _vala_JsonNode_copy (JsonNode* self) {
647 #line 131 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
648         return g_boxed_copy (json_node_get_type (), self);
649 #line 650 "Project.vala.c"
650 }
651
652
653 static gpointer __vala_JsonNode_copy0 (gpointer self) {
654 #line 131 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
655         return self ? _vala_JsonNode_copy (self) : NULL;
656 #line 657 "Project.vala.c"
657 }
658
659
660 static void _vala_JsonNode_free (JsonNode* self) {
661 #line 136 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
662         g_boxed_free (json_node_get_type (), self);
663 #line 664 "Project.vala.c"
664 }
665
666
667 static JsonObject* _vala_JsonObject_copy (JsonObject* self) {
668 #line 139 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
669         return g_boxed_copy (json_object_get_type (), self);
670 #line 671 "Project.vala.c"
671 }
672
673
674 static gpointer __vala_JsonObject_copy0 (gpointer self) {
675 #line 139 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
676         return self ? _vala_JsonObject_copy (self) : NULL;
677 #line 678 "Project.vala.c"
678 }
679
680
681 static void __lambda2_ (Block2Data* _data2_, JsonObject* sobj, const gchar* key, JsonNode* val) {
682         ProjectProject* _tmp0_;
683         GeeHashMap* _tmp1_;
684         const gchar* _tmp2_;
685 #line 163 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
686         g_return_if_fail (sobj != NULL);
687 #line 163 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
688         g_return_if_fail (key != NULL);
689 #line 163 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
690         g_return_if_fail (val != NULL);
691 #line 164 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
692         _tmp0_ = _data2_->proj;
693 #line 164 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
694         _tmp1_ = _tmp0_->paths;
695 #line 164 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
696         _tmp2_ = key;
697 #line 164 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
698         gee_abstract_map_set ((GeeAbstractMap*) _tmp1_, _tmp2_, "dir");
699 #line 700 "Project.vala.c"
700 }
701
702
703 static void ___lambda2__json_object_foreach (JsonObject* object, const gchar* member_name, JsonNode* member_node, gpointer self) {
704 #line 163 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
705         __lambda2_ (self, object, member_name, member_node);
706 #line 707 "Project.vala.c"
707 }
708
709
710 static void _vala_JsonObject_free (JsonObject* self) {
711 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
712         g_boxed_free (json_object_get_type (), self);
713 #line 714 "Project.vala.c"
714 }
715
716
717 void project_project_factoryFromFile (const gchar* jsonfile) {
718         Block2Data* _data2_;
719         const gchar* _tmp0_;
720         JsonParser* _tmp1_;
721         JsonParser* pa;
722         const gchar* _tmp2_;
723         JsonNode* _tmp3_ = NULL;
724         JsonNode* _tmp4_;
725         JsonNode* node;
726         gboolean _tmp5_ = FALSE;
727         JsonNode* _tmp6_;
728         gboolean _tmp9_;
729         JsonNode* _tmp15_;
730         JsonObject* _tmp16_ = NULL;
731         JsonObject* _tmp17_;
732         JsonObject* obj;
733         JsonObject* _tmp18_;
734         const gchar* _tmp19_ = NULL;
735         gchar* _tmp20_;
736         gchar* xtype;
737         const gchar* _tmp21_;
738         ProjectProject* _tmp22_ = NULL;
739         ProjectProject* _tmp23_;
740         const gchar* _tmp24_;
741         gchar* _tmp25_ = NULL;
742         gchar* _tmp26_;
743         gchar** _tmp27_;
744         gchar** _tmp28_ = NULL;
745         gchar** _tmp29_;
746         gint _tmp29__length1;
747         const gchar* _tmp30_;
748         gchar* _tmp31_;
749         JsonObject* _tmp32_;
750         gboolean _tmp33_ = FALSE;
751         JsonObject* _tmp38_;
752         gboolean _tmp39_ = FALSE;
753         JsonObject* _tmp44_;
754         gboolean _tmp45_ = FALSE;
755         ProjectProject* _tmp50_;
756         JsonObject* _tmp51_;
757         const gchar* _tmp52_ = NULL;
758         gchar* _tmp53_;
759         JsonObject* _tmp54_;
760         JsonObject* _tmp55_ = NULL;
761         JsonObject* _tmp56_;
762         JsonObject* paths;
763         JsonObject* _tmp57_;
764         GeeHashMap* _tmp58_;
765         ProjectProject* _tmp59_;
766         const gchar* _tmp60_;
767         ProjectProject* _tmp61_;
768         GError * _inner_error_ = NULL;
769 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
770         g_return_if_fail (jsonfile != NULL);
771 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
772         _data2_ = g_slice_new0 (Block2Data);
773 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
774         _data2_->_ref_count_ = 1;
775 #line 127 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
776         _tmp0_ = jsonfile;
777 #line 127 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
778         g_print ("parse %s\n", _tmp0_);
779 #line 129 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
780         _tmp1_ = json_parser_new ();
781 #line 129 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
782         pa = _tmp1_;
783 #line 130 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
784         _tmp2_ = jsonfile;
785 #line 130 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
786         json_parser_load_from_file (pa, _tmp2_, &_inner_error_);
787 #line 130 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
788         if (_inner_error_ != NULL) {
789 #line 130 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
790                 _g_object_unref0 (pa);
791 #line 130 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
792                 block2_data_unref (_data2_);
793 #line 130 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
794                 _data2_ = NULL;
795 #line 130 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
796                 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);
797 #line 130 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
798                 g_clear_error (&_inner_error_);
799 #line 130 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
800                 return;
801 #line 802 "Project.vala.c"
802         }
803 #line 131 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
804         _tmp3_ = json_parser_get_root (pa);
805 #line 131 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
806         _tmp4_ = __vala_JsonNode_copy0 (_tmp3_);
807 #line 131 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
808         node = _tmp4_;
809 #line 134 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
810         _tmp6_ = node;
811 #line 134 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
812         if (_tmp6_ == NULL) {
813 #line 134 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
814                 _tmp5_ = TRUE;
815 #line 816 "Project.vala.c"
816         } else {
817                 JsonNode* _tmp7_;
818                 JsonNodeType _tmp8_ = 0;
819 #line 134 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
820                 _tmp7_ = node;
821 #line 134 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
822                 _tmp8_ = json_node_get_node_type (_tmp7_);
823 #line 134 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
824                 _tmp5_ = _tmp8_ != JSON_NODE_OBJECT;
825 #line 826 "Project.vala.c"
826         }
827 #line 134 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
828         _tmp9_ = _tmp5_;
829 #line 134 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
830         if (_tmp9_) {
831 #line 832 "Project.vala.c"
832                 const gchar* _tmp10_;
833                 gchar* _tmp11_;
834                 gchar* _tmp12_;
835                 gchar* _tmp13_;
836                 gchar* _tmp14_;
837 #line 135 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
838                 _tmp10_ = jsonfile;
839 #line 135 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
840                 _tmp11_ = g_strconcat ("SKIP ", _tmp10_, NULL);
841 #line 135 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
842                 _tmp12_ = _tmp11_;
843 #line 135 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
844                 _tmp13_ = g_strconcat (_tmp12_, " - invalid format?\n", NULL);
845 #line 135 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
846                 _tmp14_ = _tmp13_;
847 #line 135 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
848                 g_print ("%s", _tmp14_);
849 #line 135 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
850                 _g_free0 (_tmp14_);
851 #line 135 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
852                 _g_free0 (_tmp12_);
853 #line 136 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
854                 __vala_JsonNode_free0 (node);
855 #line 136 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
856                 _g_object_unref0 (pa);
857 #line 136 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
858                 block2_data_unref (_data2_);
859 #line 136 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
860                 _data2_ = NULL;
861 #line 136 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
862                 return;
863 #line 864 "Project.vala.c"
864         }
865 #line 139 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
866         _tmp15_ = node;
867 #line 139 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
868         _tmp16_ = json_node_get_object (_tmp15_);
869 #line 139 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
870         _tmp17_ = __vala_JsonObject_copy0 (_tmp16_);
871 #line 139 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
872         obj = _tmp17_;
873 #line 140 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
874         _tmp18_ = obj;
875 #line 140 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
876         _tmp19_ = json_object_get_string_member (_tmp18_, "xtype");
877 #line 140 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
878         _tmp20_ = g_strdup (_tmp19_);
879 #line 140 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
880         xtype = _tmp20_;
881 #line 142 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
882         _tmp21_ = xtype;
883 #line 142 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
884         _tmp22_ = project_project_factory (_tmp21_, "");
885 #line 142 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
886         _data2_->proj = _tmp22_;
887 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
888         _tmp23_ = _data2_->proj;
889 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
890         _tmp24_ = jsonfile;
891 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
892         _tmp25_ = g_path_get_basename (_tmp24_);
893 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
894         _tmp26_ = _tmp25_;
895 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
896         _tmp28_ = _tmp27_ = g_strsplit (_tmp26_, ".", 0);
897 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
898         _tmp29_ = _tmp28_;
899 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
900         _tmp29__length1 = _vala_array_length (_tmp27_);
901 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
902         _tmp30_ = _tmp29_[0];
903 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
904         _tmp31_ = g_strdup (_tmp30_);
905 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
906         _g_free0 (_tmp23_->fn);
907 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
908         _tmp23_->fn = _tmp31_;
909 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
910         _tmp29_ = (_vala_array_free (_tmp29_, _tmp29__length1, (GDestroyNotify) g_free), NULL);
911 #line 144 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
912         _g_free0 (_tmp26_);
913 #line 148 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
914         _tmp32_ = obj;
915 #line 148 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
916         _tmp33_ = json_object_has_member (_tmp32_, "runhtml");
917 #line 148 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
918         if (_tmp33_) {
919 #line 920 "Project.vala.c"
920                 ProjectProject* _tmp34_;
921                 JsonObject* _tmp35_;
922                 const gchar* _tmp36_ = NULL;
923                 gchar* _tmp37_;
924 #line 149 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
925                 _tmp34_ = _data2_->proj;
926 #line 149 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
927                 _tmp35_ = obj;
928 #line 149 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
929                 _tmp36_ = json_object_get_string_member (_tmp35_, "runhtml");
930 #line 149 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
931                 _tmp37_ = g_strdup (_tmp36_);
932 #line 149 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
933                 _g_free0 (_tmp34_->runhtml);
934 #line 149 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
935                 _tmp34_->runhtml = _tmp37_;
936 #line 937 "Project.vala.c"
937         }
938 #line 152 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
939         _tmp38_ = obj;
940 #line 152 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
941         _tmp39_ = json_object_has_member (_tmp38_, "base_template");
942 #line 152 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
943         if (_tmp39_) {
944 #line 945 "Project.vala.c"
945                 ProjectProject* _tmp40_;
946                 JsonObject* _tmp41_;
947                 const gchar* _tmp42_ = NULL;
948                 gchar* _tmp43_;
949 #line 153 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
950                 _tmp40_ = _data2_->proj;
951 #line 153 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
952                 _tmp41_ = obj;
953 #line 153 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
954                 _tmp42_ = json_object_get_string_member (_tmp41_, "base_template");
955 #line 153 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
956                 _tmp43_ = g_strdup (_tmp42_);
957 #line 153 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
958                 _g_free0 (_tmp40_->base_template);
959 #line 153 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
960                 _tmp40_->base_template = _tmp43_;
961 #line 962 "Project.vala.c"
962         }
963 #line 156 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
964         _tmp44_ = obj;
965 #line 156 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
966         _tmp45_ = json_object_has_member (_tmp44_, "rootURL");
967 #line 156 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
968         if (_tmp45_) {
969 #line 970 "Project.vala.c"
970                 ProjectProject* _tmp46_;
971                 JsonObject* _tmp47_;
972                 const gchar* _tmp48_ = NULL;
973                 gchar* _tmp49_;
974 #line 157 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
975                 _tmp46_ = _data2_->proj;
976 #line 157 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
977                 _tmp47_ = obj;
978 #line 157 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
979                 _tmp48_ = json_object_get_string_member (_tmp47_, "rootURL");
980 #line 157 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
981                 _tmp49_ = g_strdup (_tmp48_);
982 #line 157 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
983                 _g_free0 (_tmp46_->rootURL);
984 #line 157 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
985                 _tmp46_->rootURL = _tmp49_;
986 #line 987 "Project.vala.c"
987         }
988 #line 160 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
989         _tmp50_ = _data2_->proj;
990 #line 160 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
991         _tmp51_ = obj;
992 #line 160 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
993         _tmp52_ = json_object_get_string_member (_tmp51_, "name");
994 #line 160 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
995         _tmp53_ = g_strdup (_tmp52_);
996 #line 160 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
997         _g_free0 (_tmp50_->name);
998 #line 160 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
999         _tmp50_->name = _tmp53_;
1000 #line 162 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1001         _tmp54_ = obj;
1002 #line 162 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1003         _tmp55_ = json_object_get_object_member (_tmp54_, "paths");
1004 #line 162 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1005         _tmp56_ = __vala_JsonObject_copy0 (_tmp55_);
1006 #line 162 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1007         paths = _tmp56_;
1008 #line 163 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1009         _tmp57_ = paths;
1010 #line 163 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1011         json_object_foreach_member (_tmp57_, ___lambda2__json_object_foreach, _data2_);
1012 #line 166 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1013         _tmp58_ = project_projects;
1014 #line 166 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1015         _tmp59_ = _data2_->proj;
1016 #line 166 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1017         _tmp60_ = _tmp59_->name;
1018 #line 166 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1019         _tmp61_ = _data2_->proj;
1020 #line 166 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1021         gee_abstract_map_set ((GeeAbstractMap*) _tmp58_, _tmp60_, _tmp61_);
1022 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1023         __vala_JsonObject_free0 (paths);
1024 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1025         _g_free0 (xtype);
1026 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1027         __vala_JsonObject_free0 (obj);
1028 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1029         __vala_JsonNode_free0 (node);
1030 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1031         _g_object_unref0 (pa);
1032 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1033         block2_data_unref (_data2_);
1034 #line 124 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1035         _data2_ = NULL;
1036 #line 1037 "Project.vala.c"
1037 }
1038
1039
1040 ProjectProject* project_project_factory (const gchar* xtype, const gchar* path) {
1041         ProjectProject* result = NULL;
1042         GeeHashMap* _tmp0_;
1043         GeeMapIterator* _tmp1_ = NULL;
1044         GeeMapIterator* iter;
1045         const gchar* _tmp12_;
1046         const gchar* _tmp13_;
1047         GQuark _tmp15_ = 0U;
1048 #line 184 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1049         static GQuark _tmp14_label0 = 0;
1050 #line 184 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1051         static GQuark _tmp14_label1 = 0;
1052 #line 1053 "Project.vala.c"
1053         GError* _tmp20_;
1054         GError * _inner_error_ = NULL;
1055 #line 170 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1056         g_return_val_if_fail (xtype != NULL, NULL);
1057 #line 170 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1058         g_return_val_if_fail (path != NULL, NULL);
1059 #line 176 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1060         _tmp0_ = project_projects;
1061 #line 176 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1062         _tmp1_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp0_);
1063 #line 176 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1064         iter = _tmp1_;
1065 #line 177 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1066         while (TRUE) {
1067 #line 1068 "Project.vala.c"
1068                 GeeMapIterator* _tmp2_;
1069                 gboolean _tmp3_ = FALSE;
1070                 GeeMapIterator* _tmp4_;
1071                 gpointer _tmp5_ = NULL;
1072                 ProjectProject* _tmp6_;
1073                 const gchar* _tmp7_;
1074                 gboolean _tmp8_ = FALSE;
1075                 gboolean _tmp9_;
1076 #line 177 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1077                 _tmp2_ = iter;
1078 #line 177 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1079                 _tmp3_ = gee_map_iterator_next (_tmp2_);
1080 #line 177 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1081                 if (!_tmp3_) {
1082 #line 177 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1083                         break;
1084 #line 1085 "Project.vala.c"
1085                 }
1086 #line 178 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1087                 _tmp4_ = iter;
1088 #line 178 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1089                 _tmp5_ = gee_map_iterator_get_value (_tmp4_);
1090 #line 178 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1091                 _tmp6_ = (ProjectProject*) _tmp5_;
1092 #line 178 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1093                 _tmp7_ = path;
1094 #line 178 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1095                 _tmp8_ = project_project_hasPath (_tmp6_, _tmp7_);
1096 #line 178 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1097                 _tmp9_ = _tmp8_;
1098 #line 178 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1099                 _g_object_unref0 (_tmp6_);
1100 #line 178 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1101                 if (_tmp9_) {
1102 #line 1103 "Project.vala.c"
1103                         GeeMapIterator* _tmp10_;
1104                         gpointer _tmp11_ = NULL;
1105 #line 179 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1106                         _tmp10_ = iter;
1107 #line 179 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1108                         _tmp11_ = gee_map_iterator_get_value (_tmp10_);
1109 #line 179 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1110                         result = (ProjectProject*) _tmp11_;
1111 #line 179 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1112                         _g_object_unref0 (iter);
1113 #line 179 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1114                         return result;
1115 #line 1116 "Project.vala.c"
1116                 }
1117         }
1118 #line 184 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1119         _tmp12_ = xtype;
1120 #line 184 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1121         _tmp13_ = _tmp12_;
1122 #line 184 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1123         _tmp15_ = (NULL == _tmp13_) ? 0 : g_quark_from_string (_tmp13_);
1124 #line 184 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1125         if (_tmp15_ == ((0 != _tmp14_label0) ? _tmp14_label0 : (_tmp14_label0 = g_quark_from_static_string ("Gtk")))) {
1126 #line 184 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1127                 switch (0) {
1128 #line 1129 "Project.vala.c"
1129                         default:
1130                         {
1131                                 const gchar* _tmp16_;
1132                                 ProjectGtk* _tmp17_;
1133 #line 186 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1134                                 _tmp16_ = path;
1135 #line 186 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1136                                 _tmp17_ = project_gtk_new (_tmp16_);
1137 #line 186 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1138                                 result = (ProjectProject*) _tmp17_;
1139 #line 186 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1140                                 _g_object_unref0 (iter);
1141 #line 186 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1142                                 return result;
1143 #line 1144 "Project.vala.c"
1144                         }
1145                 }
1146         } else if (_tmp15_ == ((0 != _tmp14_label1) ? _tmp14_label1 : (_tmp14_label1 = g_quark_from_static_string ("Roo")))) {
1147 #line 184 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1148                 switch (0) {
1149 #line 1150 "Project.vala.c"
1150                         default:
1151                         {
1152                                 const gchar* _tmp18_;
1153                                 ProjectRoo* _tmp19_;
1154 #line 188 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1155                                 _tmp18_ = path;
1156 #line 188 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1157                                 _tmp19_ = project_roo_new (_tmp18_);
1158 #line 188 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1159                                 result = (ProjectProject*) _tmp19_;
1160 #line 188 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1161                                 _g_object_unref0 (iter);
1162 #line 188 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1163                                 return result;
1164 #line 1165 "Project.vala.c"
1165                         }
1166                 }
1167         }
1168 #line 190 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1169         _tmp20_ = g_error_new_literal (PROJECT_ERROR, PROJECT_ERROR_INVALID_TYPE, "invalid project type");
1170 #line 190 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1171         _inner_error_ = _tmp20_;
1172 #line 190 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1173         _g_object_unref0 (iter);
1174 #line 190 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1175         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);
1176 #line 190 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1177         g_clear_error (&_inner_error_);
1178 #line 190 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1179         return NULL;
1180 #line 1181 "Project.vala.c"
1181 }
1182
1183
1184 void project_project_remove (ProjectProject* project) {
1185         const gchar* _tmp0_ = NULL;
1186         gchar* _tmp1_;
1187         gchar* dirname;
1188         gchar* _tmp2_;
1189         gchar* _tmp3_;
1190         ProjectProject* _tmp4_;
1191         const gchar* _tmp5_;
1192         gchar* _tmp6_;
1193         gchar* _tmp7_;
1194         gchar* _tmp8_;
1195         gchar* _tmp9_;
1196         GeeHashMap* _tmp10_;
1197         ProjectProject* _tmp11_;
1198         const gchar* _tmp12_;
1199 #line 193 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1200         g_return_if_fail (project != NULL);
1201 #line 196 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1202         _tmp0_ = g_get_home_dir ();
1203 #line 196 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1204         _tmp1_ = g_strconcat (_tmp0_, "/.Builder", NULL);
1205 #line 196 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1206         dirname = _tmp1_;
1207 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1208         _tmp2_ = g_strconcat (dirname, "/", NULL);
1209 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1210         _tmp3_ = _tmp2_;
1211 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1212         _tmp4_ = project;
1213 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1214         _tmp5_ = _tmp4_->fn;
1215 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1216         _tmp6_ = g_strconcat (_tmp3_, _tmp5_, NULL);
1217 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1218         _tmp7_ = _tmp6_;
1219 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1220         _tmp8_ = g_strconcat (_tmp7_, ".json", NULL);
1221 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1222         _tmp9_ = _tmp8_;
1223 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1224         g_unlink (_tmp9_);
1225 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1226         _g_free0 (_tmp9_);
1227 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1228         _g_free0 (_tmp7_);
1229 #line 198 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1230         _g_free0 (_tmp3_);
1231 #line 199 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1232         _tmp10_ = project_projects;
1233 #line 199 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1234         _tmp11_ = project;
1235 #line 199 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1236         _tmp12_ = _tmp11_->name;
1237 #line 199 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1238         gee_abstract_map_unset ((GeeAbstractMap*) _tmp10_, _tmp12_, NULL);
1239 #line 193 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1240         _g_free0 (dirname);
1241 #line 1242 "Project.vala.c"
1242 }
1243
1244
1245 void project_project_save (ProjectProject* self) {
1246         const gchar* _tmp0_;
1247         gint _tmp1_;
1248         gint _tmp2_;
1249         const gchar* _tmp16_ = NULL;
1250         gchar* _tmp17_;
1251         gchar* dirname;
1252         gchar* _tmp18_ = NULL;
1253         gchar* s;
1254         gchar* _tmp19_;
1255         gchar* _tmp20_;
1256         const gchar* _tmp21_;
1257         gchar* _tmp22_;
1258         gchar* _tmp23_;
1259         gchar* _tmp24_;
1260         gchar* _tmp25_;
1261         gint _tmp26_;
1262         gint _tmp27_;
1263         GError * _inner_error_ = NULL;
1264 #line 227 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1265         g_return_if_fail (self != NULL);
1266 #line 231 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1267         _tmp0_ = self->fn;
1268 #line 231 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1269         _tmp1_ = strlen (_tmp0_);
1270 #line 231 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1271         _tmp2_ = _tmp1_;
1272 #line 231 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1273         if (_tmp2_ < 1) {
1274 #line 1275 "Project.vala.c"
1275                 GDateTime* _tmp3_;
1276                 GDateTime* t;
1277                 GTimeVal tv = {0};
1278                 GDateTime* _tmp4_;
1279                 GTimeVal _tmp5_ = {0};
1280                 GTimeVal _tmp6_;
1281                 glong _tmp7_;
1282                 GTimeVal _tmp8_;
1283                 glong _tmp9_;
1284                 gchar* _tmp10_ = NULL;
1285                 gchar* str;
1286                 const gchar* _tmp11_;
1287                 const gchar* _tmp12_;
1288                 gint _tmp13_;
1289                 gint _tmp14_;
1290                 gchar* _tmp15_ = NULL;
1291 #line 233 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1292                 _tmp3_ = g_date_time_new_now_local ();
1293 #line 233 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1294                 t = _tmp3_;
1295 #line 235 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1296                 _tmp4_ = t;
1297 #line 235 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1298                 g_date_time_to_timeval (_tmp4_, &_tmp5_);
1299 #line 235 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1300                 tv = _tmp5_;
1301 #line 236 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1302                 _tmp6_ = tv;
1303 #line 236 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1304                 _tmp7_ = _tmp6_.tv_sec;
1305 #line 236 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1306                 _tmp8_ = tv;
1307 #line 236 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1308                 _tmp9_ = _tmp8_.tv_usec;
1309 #line 236 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1310                 _tmp10_ = g_strdup_printf ("%l:%l", _tmp7_, _tmp9_);
1311 #line 236 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1312                 str = _tmp10_;
1313 #line 238 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1314                 _tmp11_ = str;
1315 #line 238 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1316                 _tmp12_ = str;
1317 #line 238 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1318                 _tmp13_ = strlen (_tmp12_);
1319 #line 238 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1320                 _tmp14_ = _tmp13_;
1321 #line 238 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1322                 _tmp15_ = g_compute_checksum_for_string (G_CHECKSUM_MD5, _tmp11_, (gsize) _tmp14_);
1323 #line 238 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1324                 _g_free0 (self->fn);
1325 #line 238 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1326                 self->fn = _tmp15_;
1327 #line 231 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1328                 _g_free0 (str);
1329 #line 231 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1330                 _g_date_time_unref0 (t);
1331 #line 1332 "Project.vala.c"
1332         }
1333 #line 241 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1334         _tmp16_ = g_get_home_dir ();
1335 #line 241 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1336         _tmp17_ = g_strconcat (_tmp16_, "/.Builder", NULL);
1337 #line 241 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1338         dirname = _tmp17_;
1339 #line 242 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1340         _tmp18_ = project_project_toJSON (self, FALSE);
1341 #line 242 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1342         s = _tmp18_;
1343 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1344         _tmp19_ = g_strconcat (dirname, "/", NULL);
1345 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1346         _tmp20_ = _tmp19_;
1347 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1348         _tmp21_ = self->fn;
1349 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1350         _tmp22_ = g_strconcat (_tmp20_, _tmp21_, NULL);
1351 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1352         _tmp23_ = _tmp22_;
1353 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1354         _tmp24_ = g_strconcat (_tmp23_, ".json", NULL);
1355 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1356         _tmp25_ = _tmp24_;
1357 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1358         _tmp26_ = strlen (s);
1359 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1360         _tmp27_ = _tmp26_;
1361 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1362         g_file_set_contents (_tmp25_, s, (gssize) _tmp27_, &_inner_error_);
1363 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1364         _g_free0 (_tmp25_);
1365 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1366         _g_free0 (_tmp23_);
1367 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1368         _g_free0 (_tmp20_);
1369 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1370         if (_inner_error_ != NULL) {
1371 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1372                 _g_free0 (s);
1373 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1374                 _g_free0 (dirname);
1375 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1376                 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);
1377 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1378                 g_clear_error (&_inner_error_);
1379 #line 243 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1380                 return;
1381 #line 1382 "Project.vala.c"
1382         }
1383 #line 227 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1384         _g_free0 (s);
1385 #line 227 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1386         _g_free0 (dirname);
1387 #line 1388 "Project.vala.c"
1388 }
1389
1390
1391 gchar* project_project_toJSON (ProjectProject* self, gboolean show_all) {
1392         gchar* result = NULL;
1393         JsonBuilder* _tmp0_;
1394         JsonBuilder* builder;
1395         JsonBuilder* _tmp1_;
1396         JsonBuilder* _tmp2_;
1397         JsonBuilder* _tmp3_;
1398         const gchar* _tmp4_;
1399         JsonBuilder* _tmp5_;
1400         JsonBuilder* _tmp6_;
1401         const gchar* _tmp7_;
1402         JsonBuilder* _tmp8_;
1403         JsonBuilder* _tmp9_;
1404         const gchar* _tmp10_;
1405         JsonBuilder* _tmp11_;
1406         JsonBuilder* _tmp12_;
1407         const gchar* _tmp13_;
1408         JsonBuilder* _tmp14_;
1409         JsonBuilder* _tmp15_;
1410         const gchar* _tmp16_;
1411         JsonBuilder* _tmp17_;
1412         JsonBuilder* _tmp18_;
1413         const gchar* _tmp19_;
1414         JsonBuilder* _tmp20_;
1415         JsonBuilder* _tmp21_;
1416         GeeHashMap* _tmp22_;
1417         GeeMapIterator* _tmp23_ = NULL;
1418         GeeMapIterator* iter;
1419         JsonBuilder* _tmp31_;
1420         gboolean _tmp32_;
1421         JsonBuilder* _tmp44_;
1422         JsonGenerator* _tmp45_;
1423         JsonGenerator* generator;
1424         JsonBuilder* _tmp46_;
1425         JsonNode* _tmp47_ = NULL;
1426         JsonNode* root;
1427         JsonGenerator* _tmp48_;
1428         JsonNode* _tmp49_;
1429         gboolean _tmp50_;
1430         JsonGenerator* _tmp53_;
1431         gchar* _tmp54_ = NULL;
1432 #line 250 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1433         g_return_val_if_fail (self != NULL, NULL);
1434 #line 253 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1435         _tmp0_ = json_builder_new ();
1436 #line 253 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1437         builder = _tmp0_;
1438 #line 255 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1439         _tmp1_ = builder;
1440 #line 255 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1441         json_builder_begin_object (_tmp1_);
1442 #line 257 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1443         _tmp2_ = builder;
1444 #line 257 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1445         json_builder_set_member_name (_tmp2_, "name");
1446 #line 258 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1447         _tmp3_ = builder;
1448 #line 258 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1449         _tmp4_ = self->name;
1450 #line 258 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1451         json_builder_add_string_value (_tmp3_, _tmp4_);
1452 #line 261 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1453         _tmp5_ = builder;
1454 #line 261 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1455         json_builder_set_member_name (_tmp5_, "fn");
1456 #line 262 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1457         _tmp6_ = builder;
1458 #line 262 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1459         _tmp7_ = self->fn;
1460 #line 262 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1461         json_builder_add_string_value (_tmp6_, _tmp7_);
1462 #line 264 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1463         _tmp8_ = builder;
1464 #line 264 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1465         json_builder_set_member_name (_tmp8_, "xtype");
1466 #line 265 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1467         _tmp9_ = builder;
1468 #line 265 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1469         _tmp10_ = self->xtype;
1470 #line 265 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1471         json_builder_add_string_value (_tmp9_, _tmp10_);
1472 #line 267 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1473         _tmp11_ = builder;
1474 #line 267 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1475         json_builder_set_member_name (_tmp11_, "runhtml");
1476 #line 268 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1477         _tmp12_ = builder;
1478 #line 268 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1479         _tmp13_ = self->runhtml;
1480 #line 268 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1481         json_builder_add_string_value (_tmp12_, _tmp13_);
1482 #line 271 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1483         _tmp14_ = builder;
1484 #line 271 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1485         json_builder_set_member_name (_tmp14_, "rootURL");
1486 #line 272 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1487         _tmp15_ = builder;
1488 #line 272 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1489         _tmp16_ = self->rootURL;
1490 #line 272 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1491         json_builder_add_string_value (_tmp15_, _tmp16_);
1492 #line 274 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1493         _tmp17_ = builder;
1494 #line 274 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1495         json_builder_set_member_name (_tmp17_, "base_template");
1496 #line 275 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1497         _tmp18_ = builder;
1498 #line 275 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1499         _tmp19_ = self->base_template;
1500 #line 275 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1501         json_builder_add_string_value (_tmp18_, _tmp19_);
1502 #line 277 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1503         _tmp20_ = builder;
1504 #line 277 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1505         json_builder_set_member_name (_tmp20_, "paths");
1506 #line 280 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1507         _tmp21_ = builder;
1508 #line 280 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1509         json_builder_begin_object (_tmp21_);
1510 #line 283 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1511         _tmp22_ = self->paths;
1512 #line 283 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1513         _tmp23_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp22_);
1514 #line 283 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1515         iter = _tmp23_;
1516 #line 284 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1517         while (TRUE) {
1518 #line 1519 "Project.vala.c"
1519                 GeeMapIterator* _tmp24_;
1520                 gboolean _tmp25_ = FALSE;
1521                 JsonBuilder* _tmp26_;
1522                 GeeMapIterator* _tmp27_;
1523                 gpointer _tmp28_ = NULL;
1524                 gchar* _tmp29_;
1525                 JsonBuilder* _tmp30_;
1526 #line 284 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1527                 _tmp24_ = iter;
1528 #line 284 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1529                 _tmp25_ = gee_map_iterator_next (_tmp24_);
1530 #line 284 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1531                 if (!_tmp25_) {
1532 #line 284 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1533                         break;
1534 #line 1535 "Project.vala.c"
1535                 }
1536 #line 285 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1537                 _tmp26_ = builder;
1538 #line 285 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1539                 _tmp27_ = iter;
1540 #line 285 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1541                 _tmp28_ = gee_map_iterator_get_key (_tmp27_);
1542 #line 285 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1543                 _tmp29_ = (gchar*) _tmp28_;
1544 #line 285 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1545                 json_builder_set_member_name (_tmp26_, _tmp29_);
1546 #line 285 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1547                 _g_free0 (_tmp29_);
1548 #line 286 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1549                 _tmp30_ = builder;
1550 #line 286 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1551                 json_builder_add_string_value (_tmp30_, "path");
1552 #line 1553 "Project.vala.c"
1553         }
1554 #line 288 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1555         _tmp31_ = builder;
1556 #line 288 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1557         json_builder_end_object (_tmp31_);
1558 #line 290 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1559         _tmp32_ = show_all;
1560 #line 290 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1561         if (_tmp32_) {
1562 #line 1563 "Project.vala.c"
1563                 JsonBuilder* _tmp33_;
1564                 JsonBuilder* _tmp34_;
1565                 GeeHashMap* _tmp35_;
1566                 GeeMapIterator* _tmp36_ = NULL;
1567                 GeeMapIterator* fiter;
1568                 JsonBuilder* _tmp43_;
1569 #line 291 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1570                 _tmp33_ = builder;
1571 #line 291 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1572                 json_builder_set_member_name (_tmp33_, "files");
1573 #line 292 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1574                 _tmp34_ = builder;
1575 #line 292 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1576                 json_builder_begin_array (_tmp34_);
1577 #line 293 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1578                 _tmp35_ = self->files;
1579 #line 293 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1580                 _tmp36_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp35_);
1581 #line 293 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1582                 fiter = _tmp36_;
1583 #line 294 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1584                 while (TRUE) {
1585 #line 1586 "Project.vala.c"
1586                         GeeMapIterator* _tmp37_;
1587                         gboolean _tmp38_ = FALSE;
1588                         JsonBuilder* _tmp39_;
1589                         GeeMapIterator* _tmp40_;
1590                         gpointer _tmp41_ = NULL;
1591                         gchar* _tmp42_;
1592 #line 294 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1593                         _tmp37_ = fiter;
1594 #line 294 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1595                         _tmp38_ = gee_map_iterator_next (_tmp37_);
1596 #line 294 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1597                         if (!_tmp38_) {
1598 #line 294 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1599                                 break;
1600 #line 1601 "Project.vala.c"
1601                         }
1602 #line 295 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1603                         _tmp39_ = builder;
1604 #line 295 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1605                         _tmp40_ = fiter;
1606 #line 295 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1607                         _tmp41_ = gee_map_iterator_get_key (_tmp40_);
1608 #line 295 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1609                         _tmp42_ = (gchar*) _tmp41_;
1610 #line 295 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1611                         json_builder_add_string_value (_tmp39_, _tmp42_);
1612 #line 295 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1613                         _g_free0 (_tmp42_);
1614 #line 1615 "Project.vala.c"
1615                 }
1616 #line 299 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1617                 _tmp43_ = builder;
1618 #line 299 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1619                 json_builder_end_array (_tmp43_);
1620 #line 290 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1621                 _g_object_unref0 (fiter);
1622 #line 1623 "Project.vala.c"
1623         }
1624 #line 303 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1625         _tmp44_ = builder;
1626 #line 303 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1627         json_builder_end_object (_tmp44_);
1628 #line 305 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1629         _tmp45_ = json_generator_new ();
1630 #line 305 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1631         generator = _tmp45_;
1632 #line 306 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1633         _tmp46_ = builder;
1634 #line 306 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1635         _tmp47_ = json_builder_get_root (_tmp46_);
1636 #line 306 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1637         root = _tmp47_;
1638 #line 307 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1639         _tmp48_ = generator;
1640 #line 307 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1641         _tmp49_ = root;
1642 #line 307 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1643         json_generator_set_root (_tmp48_, _tmp49_);
1644 #line 308 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1645         _tmp50_ = show_all;
1646 #line 308 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1647         if (_tmp50_) {
1648 #line 1649 "Project.vala.c"
1649                 JsonGenerator* _tmp51_;
1650                 JsonGenerator* _tmp52_;
1651 #line 309 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1652                 _tmp51_ = generator;
1653 #line 309 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1654                 json_generator_set_pretty (_tmp51_, TRUE);
1655 #line 310 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1656                 _tmp52_ = generator;
1657 #line 310 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1658                 json_generator_set_indent (_tmp52_, (guint) 4);
1659 #line 1660 "Project.vala.c"
1660         }
1661 #line 313 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1662         _tmp53_ = generator;
1663 #line 313 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1664         _tmp54_ = json_generator_to_data (_tmp53_, NULL);
1665 #line 313 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1666         result = _tmp54_;
1667 #line 313 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1668         __vala_JsonNode_free0 (root);
1669 #line 313 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1670         _g_object_unref0 (generator);
1671 #line 313 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1672         _g_object_unref0 (iter);
1673 #line 313 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1674         _g_object_unref0 (builder);
1675 #line 313 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1676         return result;
1677 #line 1678 "Project.vala.c"
1678 }
1679
1680
1681 gchar* project_project_firstPath (ProjectProject* self) {
1682         gchar* result = NULL;
1683         GeeHashMap* _tmp0_;
1684         GeeMapIterator* _tmp1_ = NULL;
1685         GeeMapIterator* iter;
1686         gchar* _tmp6_;
1687 #line 317 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1688         g_return_val_if_fail (self != NULL, NULL);
1689 #line 319 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1690         _tmp0_ = self->paths;
1691 #line 319 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1692         _tmp1_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp0_);
1693 #line 319 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1694         iter = _tmp1_;
1695 #line 320 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1696         while (TRUE) {
1697 #line 1698 "Project.vala.c"
1698                 GeeMapIterator* _tmp2_;
1699                 gboolean _tmp3_ = FALSE;
1700                 GeeMapIterator* _tmp4_;
1701                 gpointer _tmp5_ = NULL;
1702 #line 320 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1703                 _tmp2_ = iter;
1704 #line 320 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1705                 _tmp3_ = gee_map_iterator_next (_tmp2_);
1706 #line 320 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1707                 if (!_tmp3_) {
1708 #line 320 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1709                         break;
1710 #line 1711 "Project.vala.c"
1711                 }
1712 #line 321 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1713                 _tmp4_ = iter;
1714 #line 321 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1715                 _tmp5_ = gee_map_iterator_get_key (_tmp4_);
1716 #line 321 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1717                 result = (gchar*) _tmp5_;
1718 #line 321 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1719                 _g_object_unref0 (iter);
1720 #line 321 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1721                 return result;
1722 #line 1723 "Project.vala.c"
1723         }
1724 #line 324 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1725         _tmp6_ = g_strdup ("");
1726 #line 324 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1727         result = _tmp6_;
1728 #line 324 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1729         _g_object_unref0 (iter);
1730 #line 324 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1731         return result;
1732 #line 1733 "Project.vala.c"
1733 }
1734
1735
1736 gboolean project_project_hasPath (ProjectProject* self, const gchar* path) {
1737         gboolean result = FALSE;
1738         GeeHashMap* _tmp0_;
1739         GeeMapIterator* _tmp1_ = NULL;
1740         GeeMapIterator* iter;
1741 #line 327 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1742         g_return_val_if_fail (self != NULL, FALSE);
1743 #line 327 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1744         g_return_val_if_fail (path != NULL, FALSE);
1745 #line 329 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1746         _tmp0_ = self->paths;
1747 #line 329 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1748         _tmp1_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp0_);
1749 #line 329 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1750         iter = _tmp1_;
1751 #line 330 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1752         while (TRUE) {
1753 #line 1754 "Project.vala.c"
1754                 GeeMapIterator* _tmp2_;
1755                 gboolean _tmp3_ = FALSE;
1756                 GeeMapIterator* _tmp4_;
1757                 gpointer _tmp5_ = NULL;
1758                 gchar* _tmp6_;
1759                 const gchar* _tmp7_;
1760                 gboolean _tmp8_;
1761 #line 330 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1762                 _tmp2_ = iter;
1763 #line 330 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1764                 _tmp3_ = gee_map_iterator_next (_tmp2_);
1765 #line 330 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1766                 if (!_tmp3_) {
1767 #line 330 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1768                         break;
1769 #line 1770 "Project.vala.c"
1770                 }
1771 #line 331 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1772                 _tmp4_ = iter;
1773 #line 331 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1774                 _tmp5_ = gee_map_iterator_get_key (_tmp4_);
1775 #line 331 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1776                 _tmp6_ = (gchar*) _tmp5_;
1777 #line 331 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1778                 _tmp7_ = path;
1779 #line 331 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1780                 _tmp8_ = g_strcmp0 (_tmp6_, _tmp7_) == 0;
1781 #line 331 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1782                 _g_free0 (_tmp6_);
1783 #line 331 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1784                 if (_tmp8_) {
1785 #line 332 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1786                         result = TRUE;
1787 #line 332 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1788                         _g_object_unref0 (iter);
1789 #line 332 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1790                         return result;
1791 #line 1792 "Project.vala.c"
1792                 }
1793         }
1794 #line 336 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1795         result = FALSE;
1796 #line 336 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1797         _g_object_unref0 (iter);
1798 #line 336 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1799         return result;
1800 #line 1801 "Project.vala.c"
1801 }
1802
1803
1804 gchar* project_project_getName (ProjectProject* self) {
1805         gchar* result = NULL;
1806         GeeHashMap* _tmp0_;
1807         GeeMapIterator* _tmp1_ = NULL;
1808         GeeMapIterator* iter;
1809         gchar* _tmp9_;
1810 #line 341 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1811         g_return_val_if_fail (self != NULL, NULL);
1812 #line 343 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1813         _tmp0_ = self->paths;
1814 #line 343 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1815         _tmp1_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp0_);
1816 #line 343 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1817         iter = _tmp1_;
1818 #line 344 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1819         while (TRUE) {
1820 #line 1821 "Project.vala.c"
1821                 GeeMapIterator* _tmp2_;
1822                 gboolean _tmp3_ = FALSE;
1823                 GeeMapIterator* _tmp4_;
1824                 gpointer _tmp5_ = NULL;
1825                 gchar* _tmp6_;
1826                 gchar* _tmp7_ = NULL;
1827                 gchar* _tmp8_;
1828 #line 344 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1829                 _tmp2_ = iter;
1830 #line 344 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1831                 _tmp3_ = gee_map_iterator_next (_tmp2_);
1832 #line 344 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1833                 if (!_tmp3_) {
1834 #line 344 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1835                         break;
1836 #line 1837 "Project.vala.c"
1837                 }
1838 #line 345 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1839                 _tmp4_ = iter;
1840 #line 345 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1841                 _tmp5_ = gee_map_iterator_get_key (_tmp4_);
1842 #line 345 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1843                 _tmp6_ = (gchar*) _tmp5_;
1844 #line 345 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1845                 _tmp7_ = g_path_get_basename (_tmp6_);
1846 #line 345 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1847                 _tmp8_ = _tmp7_;
1848 #line 345 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1849                 _g_free0 (_tmp6_);
1850 #line 345 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1851                 result = _tmp8_;
1852 #line 345 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1853                 _g_object_unref0 (iter);
1854 #line 345 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1855                 return result;
1856 #line 1857 "Project.vala.c"
1857         }
1858 #line 348 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1859         _tmp9_ = g_strdup ("");
1860 #line 348 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1861         result = _tmp9_;
1862 #line 348 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1863         _g_object_unref0 (iter);
1864 #line 348 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1865         return result;
1866 #line 1867 "Project.vala.c"
1867 }
1868
1869
1870 static gint __lambda3_ (gconstpointer fa, gconstpointer fb) {
1871         gint result = 0;
1872         gconstpointer _tmp0_;
1873         const gchar* _tmp1_;
1874         gconstpointer _tmp2_;
1875         const gchar* _tmp3_;
1876         gint _tmp4_ = 0;
1877 #line 360 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1878         _tmp0_ = fa;
1879 #line 360 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1880         _tmp1_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, JS_RENDER_TYPE_JS_RENDER, JsRenderJsRender)->name;
1881 #line 360 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1882         _tmp2_ = fb;
1883 #line 360 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1884         _tmp3_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, JS_RENDER_TYPE_JS_RENDER, JsRenderJsRender)->name;
1885 #line 360 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1886         _tmp4_ = g_utf8_collate (_tmp1_, _tmp3_);
1887 #line 360 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1888         result = _tmp4_;
1889 #line 360 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1890         return result;
1891 #line 1892 "Project.vala.c"
1892 }
1893
1894
1895 static gint ___lambda3__gcompare_func (gconstpointer a, gconstpointer b) {
1896         gint result;
1897         result = __lambda3_ (a, b);
1898 #line 359 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1899         return result;
1900 #line 1901 "Project.vala.c"
1901 }
1902
1903
1904 GeeArrayList* project_project_sortedFiles (ProjectProject* self) {
1905         GeeArrayList* result = NULL;
1906         GeeArrayList* _tmp0_;
1907         GeeArrayList* files;
1908         GeeHashMap* _tmp1_;
1909         GeeMapIterator* _tmp2_ = NULL;
1910         GeeMapIterator* fiter;
1911         GeeArrayList* _tmp9_;
1912 #line 351 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1913         g_return_val_if_fail (self != NULL, NULL);
1914 #line 353 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1915         _tmp0_ = gee_array_list_new (JS_RENDER_TYPE_JS_RENDER, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL);
1916 #line 353 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1917         files = _tmp0_;
1918 #line 355 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1919         _tmp1_ = self->files;
1920 #line 355 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1921         _tmp2_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp1_);
1922 #line 355 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1923         fiter = _tmp2_;
1924 #line 356 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1925         while (TRUE) {
1926 #line 1927 "Project.vala.c"
1927                 GeeMapIterator* _tmp3_;
1928                 gboolean _tmp4_ = FALSE;
1929                 GeeArrayList* _tmp5_;
1930                 GeeMapIterator* _tmp6_;
1931                 gpointer _tmp7_ = NULL;
1932                 JsRenderJsRender* _tmp8_;
1933 #line 356 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1934                 _tmp3_ = fiter;
1935 #line 356 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1936                 _tmp4_ = gee_map_iterator_next (_tmp3_);
1937 #line 356 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1938                 if (!_tmp4_) {
1939 #line 356 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1940                         break;
1941 #line 1942 "Project.vala.c"
1942                 }
1943 #line 357 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1944                 _tmp5_ = files;
1945 #line 357 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1946                 _tmp6_ = fiter;
1947 #line 357 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1948                 _tmp7_ = gee_map_iterator_get_value (_tmp6_);
1949 #line 357 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1950                 _tmp8_ = (JsRenderJsRender*) _tmp7_;
1951 #line 357 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1952                 gee_abstract_collection_add ((GeeAbstractCollection*) _tmp5_, _tmp8_);
1953 #line 357 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1954                 _g_object_unref0 (_tmp8_);
1955 #line 1956 "Project.vala.c"
1956         }
1957 #line 359 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1958         _tmp9_ = files;
1959 #line 359 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1960         gee_list_sort ((GeeList*) _tmp9_, ___lambda3__gcompare_func);
1961 #line 363 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1962         result = files;
1963 #line 363 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1964         _g_object_unref0 (fiter);
1965 #line 363 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1966         return result;
1967 #line 1968 "Project.vala.c"
1968 }
1969
1970
1971 /**
1972  *
1973  * to tree - > is this needed anymore???
1974  */
1975 JsRenderJsRender* project_project_getByName (ProjectProject* self, const gchar* name) {
1976         JsRenderJsRender* result = NULL;
1977         GeeHashMap* _tmp0_;
1978         GeeMapIterator* _tmp1_ = NULL;
1979         GeeMapIterator* fiter;
1980 #line 434 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1981         g_return_val_if_fail (self != NULL, NULL);
1982 #line 434 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1983         g_return_val_if_fail (name != NULL, NULL);
1984 #line 437 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1985         _tmp0_ = self->files;
1986 #line 437 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1987         _tmp1_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp0_);
1988 #line 437 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1989         fiter = _tmp1_;
1990 #line 438 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
1991         while (TRUE) {
1992 #line 1993 "Project.vala.c"
1993                 GeeMapIterator* _tmp2_;
1994                 gboolean _tmp3_ = FALSE;
1995                 GeeMapIterator* _tmp4_;
1996                 gpointer _tmp5_ = NULL;
1997                 JsRenderJsRender* f;
1998                 JsRenderJsRender* _tmp6_;
1999                 const gchar* _tmp7_;
2000                 const gchar* _tmp8_;
2001 #line 438 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2002                 _tmp2_ = fiter;
2003 #line 438 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2004                 _tmp3_ = gee_map_iterator_next (_tmp2_);
2005 #line 438 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2006                 if (!_tmp3_) {
2007 #line 438 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2008                         break;
2009 #line 2010 "Project.vala.c"
2010                 }
2011 #line 440 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2012                 _tmp4_ = fiter;
2013 #line 440 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2014                 _tmp5_ = gee_map_iterator_get_value (_tmp4_);
2015 #line 440 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2016                 f = (JsRenderJsRender*) _tmp5_;
2017 #line 444 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2018                 _tmp6_ = f;
2019 #line 444 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2020                 _tmp7_ = _tmp6_->name;
2021 #line 444 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2022                 _tmp8_ = name;
2023 #line 444 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2024                 if (g_strcmp0 (_tmp7_, _tmp8_) == 0) {
2025 #line 445 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2026                         result = f;
2027 #line 445 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2028                         _g_object_unref0 (fiter);
2029 #line 445 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2030                         return result;
2031 #line 2032 "Project.vala.c"
2032                 }
2033 #line 438 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2034                 _g_object_unref0 (f);
2035 #line 2036 "Project.vala.c"
2036         }
2037 #line 448 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2038         result = NULL;
2039 #line 448 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2040         _g_object_unref0 (fiter);
2041 #line 448 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2042         return result;
2043 #line 2044 "Project.vala.c"
2044 }
2045
2046
2047 JsRenderJsRender* project_project_getById (ProjectProject* self, const gchar* id) {
2048         JsRenderJsRender* result = NULL;
2049         GeeHashMap* _tmp0_;
2050         GeeMapIterator* _tmp1_ = NULL;
2051         GeeMapIterator* fiter;
2052 #line 451 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2053         g_return_val_if_fail (self != NULL, NULL);
2054 #line 451 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2055         g_return_val_if_fail (id != NULL, NULL);
2056 #line 454 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2057         _tmp0_ = self->files;
2058 #line 454 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2059         _tmp1_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp0_);
2060 #line 454 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2061         fiter = _tmp1_;
2062 #line 455 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2063         while (TRUE) {
2064 #line 2065 "Project.vala.c"
2065                 GeeMapIterator* _tmp2_;
2066                 gboolean _tmp3_ = FALSE;
2067                 GeeMapIterator* _tmp4_;
2068                 gpointer _tmp5_ = NULL;
2069                 JsRenderJsRender* f;
2070                 JsRenderJsRender* _tmp6_;
2071                 const gchar* _tmp7_;
2072                 const gchar* _tmp8_;
2073 #line 455 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2074                 _tmp2_ = fiter;
2075 #line 455 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2076                 _tmp3_ = gee_map_iterator_next (_tmp2_);
2077 #line 455 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2078                 if (!_tmp3_) {
2079 #line 455 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2080                         break;
2081 #line 2082 "Project.vala.c"
2082                 }
2083 #line 457 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2084                 _tmp4_ = fiter;
2085 #line 457 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2086                 _tmp5_ = gee_map_iterator_get_value (_tmp4_);
2087 #line 457 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2088                 f = (JsRenderJsRender*) _tmp5_;
2089 #line 461 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2090                 _tmp6_ = f;
2091 #line 461 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2092                 _tmp7_ = _tmp6_->id;
2093 #line 461 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2094                 _tmp8_ = id;
2095 #line 461 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2096                 if (g_strcmp0 (_tmp7_, _tmp8_) == 0) {
2097 #line 462 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2098                         result = f;
2099 #line 462 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2100                         _g_object_unref0 (fiter);
2101 #line 462 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2102                         return result;
2103 #line 2104 "Project.vala.c"
2104                 }
2105 #line 455 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2106                 _g_object_unref0 (f);
2107 #line 2108 "Project.vala.c"
2108         }
2109 #line 465 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2110         result = NULL;
2111 #line 465 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2112         _g_object_unref0 (fiter);
2113 #line 465 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2114         return result;
2115 #line 2116 "Project.vala.c"
2116 }
2117
2118
2119 JsRenderJsRender* project_project_newFile (ProjectProject* self, const gchar* name) {
2120         JsRenderJsRender* result = NULL;
2121         const gchar* _tmp0_;
2122         gchar* _tmp1_ = NULL;
2123         gchar* _tmp2_;
2124         gchar* _tmp3_;
2125         gchar* _tmp4_;
2126         const gchar* _tmp5_;
2127         gchar* _tmp6_;
2128         gchar* _tmp7_;
2129         gchar* _tmp8_;
2130         gchar* _tmp9_;
2131         JsRenderJsRender* _tmp10_ = NULL;
2132         JsRenderJsRender* _tmp11_;
2133         JsRenderJsRender* ret;
2134 #line 468 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2135         g_return_val_if_fail (self != NULL, NULL);
2136 #line 468 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2137         g_return_val_if_fail (name != NULL, NULL);
2138 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2139         _tmp0_ = self->xtype;
2140 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2141         _tmp1_ = project_project_firstPath (self);
2142 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2143         _tmp2_ = _tmp1_;
2144 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2145         _tmp3_ = g_strconcat (_tmp2_, "/", NULL);
2146 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2147         _tmp4_ = _tmp3_;
2148 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2149         _tmp5_ = name;
2150 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2151         _tmp6_ = g_strconcat (_tmp4_, _tmp5_, NULL);
2152 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2153         _tmp7_ = _tmp6_;
2154 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2155         _tmp8_ = g_strconcat (_tmp7_, ".bjs", NULL);
2156 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2157         _tmp9_ = _tmp8_;
2158 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2159         _tmp10_ = js_render_js_render_factory (_tmp0_, self, _tmp9_);
2160 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2161         _tmp11_ = _tmp10_;
2162 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2163         _g_free0 (_tmp9_);
2164 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2165         _g_free0 (_tmp7_);
2166 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2167         _g_free0 (_tmp4_);
2168 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2169         _g_free0 (_tmp2_);
2170 #line 470 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2171         ret = _tmp11_;
2172 #line 473 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2173         project_project_addFile (self, ret);
2174 #line 474 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2175         result = ret;
2176 #line 474 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2177         return result;
2178 #line 2179 "Project.vala.c"
2179 }
2180
2181
2182 JsRenderJsRender* project_project_loadFileOnly (ProjectProject* self, const gchar* path) {
2183         JsRenderJsRender* result = NULL;
2184         const gchar* _tmp0_;
2185         gchar* _tmp1_;
2186         gchar* xt;
2187         const gchar* _tmp2_;
2188         JsRenderJsRender* _tmp3_ = NULL;
2189 #line 477 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2190         g_return_val_if_fail (self != NULL, NULL);
2191 #line 477 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2192         g_return_val_if_fail (path != NULL, NULL);
2193 #line 479 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2194         _tmp0_ = self->xtype;
2195 #line 479 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2196         _tmp1_ = g_strdup (_tmp0_);
2197 #line 479 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2198         xt = _tmp1_;
2199 #line 480 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2200         _tmp2_ = path;
2201 #line 480 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2202         _tmp3_ = js_render_js_render_factory (xt, self, _tmp2_);
2203 #line 480 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2204         result = _tmp3_;
2205 #line 480 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2206         _g_free0 (xt);
2207 #line 480 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2208         return result;
2209 #line 2210 "Project.vala.c"
2210 }
2211
2212
2213 JsRenderJsRender* project_project_create (ProjectProject* self, const gchar* filename) {
2214         JsRenderJsRender* result = NULL;
2215         const gchar* _tmp0_;
2216         JsRenderJsRender* _tmp1_ = NULL;
2217         JsRenderJsRender* ret;
2218 #line 484 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2219         g_return_val_if_fail (self != NULL, NULL);
2220 #line 484 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2221         g_return_val_if_fail (filename != NULL, NULL);
2222 #line 486 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2223         _tmp0_ = filename;
2224 #line 486 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2225         _tmp1_ = project_project_loadFileOnly (self, _tmp0_);
2226 #line 486 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2227         ret = _tmp1_;
2228 #line 487 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2229         js_render_js_render_save (ret);
2230 #line 488 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2231         project_project_addFile (self, ret);
2232 #line 489 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2233         result = ret;
2234 #line 489 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2235         return result;
2236 #line 2237 "Project.vala.c"
2237 }
2238
2239
2240 void project_project_addFile (ProjectProject* self, JsRenderJsRender* pfile) {
2241         GeeHashMap* _tmp0_;
2242         JsRenderJsRender* _tmp1_;
2243         const gchar* _tmp2_;
2244         JsRenderJsRender* _tmp3_;
2245 #line 494 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2246         g_return_if_fail (self != NULL);
2247 #line 494 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2248         g_return_if_fail (pfile != NULL);
2249 #line 497 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2250         _tmp0_ = self->files;
2251 #line 497 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2252         _tmp1_ = pfile;
2253 #line 497 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2254         _tmp2_ = _tmp1_->path;
2255 #line 497 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2256         _tmp3_ = pfile;
2257 #line 497 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2258         gee_abstract_map_set ((GeeAbstractMap*) _tmp0_, _tmp2_, _tmp3_);
2259 #line 498 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2260         g_signal_emit_by_name (self, "on-changed");
2261 #line 2262 "Project.vala.c"
2262 }
2263
2264
2265 void project_project_add (ProjectProject* self, const gchar* path, const gchar* type) {
2266         GeeHashMap* _tmp0_;
2267         const gchar* _tmp1_;
2268         const gchar* _tmp2_;
2269         const gchar* _tmp3_;
2270         const gchar* _tmp5_;
2271 #line 501 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2272         g_return_if_fail (self != NULL);
2273 #line 501 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2274         g_return_if_fail (path != NULL);
2275 #line 501 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2276         g_return_if_fail (type != NULL);
2277 #line 503 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2278         _tmp0_ = self->paths;
2279 #line 503 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2280         _tmp1_ = path;
2281 #line 503 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2282         _tmp2_ = type;
2283 #line 503 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2284         gee_abstract_map_set ((GeeAbstractMap*) _tmp0_, _tmp1_, _tmp2_);
2285 #line 505 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2286         _tmp3_ = type;
2287 #line 505 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2288         if (g_strcmp0 (_tmp3_, "dir") == 0) {
2289 #line 2290 "Project.vala.c"
2290                 const gchar* _tmp4_;
2291 #line 506 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2292                 _tmp4_ = path;
2293 #line 506 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2294                 project_project_scanDir (self, _tmp4_, 0);
2295 #line 2296 "Project.vala.c"
2296         }
2297 #line 509 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2298         _tmp5_ = type;
2299 #line 509 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2300         if (g_strcmp0 (_tmp5_, "file") == 0) {
2301 #line 2302 "Project.vala.c"
2302                 GeeHashMap* _tmp6_;
2303                 const gchar* _tmp7_;
2304                 const gchar* _tmp8_;
2305                 JsRenderJsRender* _tmp9_ = NULL;
2306                 JsRenderJsRender* _tmp10_;
2307 #line 511 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2308                 _tmp6_ = self->files;
2309 #line 511 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2310                 _tmp7_ = path;
2311 #line 511 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2312                 _tmp8_ = path;
2313 #line 511 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2314                 _tmp9_ = project_project_loadFileOnly (self, _tmp8_);
2315 #line 511 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2316                 _tmp10_ = _tmp9_;
2317 #line 511 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2318                 gee_abstract_map_set ((GeeAbstractMap*) _tmp6_, _tmp7_, _tmp10_);
2319 #line 511 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2320                 _g_object_unref0 (_tmp10_);
2321 #line 2322 "Project.vala.c"
2322         }
2323 #line 513 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2324         g_signal_emit_by_name (self, "on-changed");
2325 #line 2326 "Project.vala.c"
2326 }
2327
2328
2329 void project_project_scanDirs (ProjectProject* self) {
2330         gboolean _tmp0_;
2331 #line 516 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2332         g_return_if_fail (self != NULL);
2333 #line 518 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2334         _tmp0_ = self->priv->is_scanned;
2335 #line 518 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2336         if (_tmp0_) {
2337 #line 519 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2338                 return;
2339 #line 2340 "Project.vala.c"
2340         }
2341 #line 521 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2342         project_project_scanDirsForce (self);
2343 #line 2344 "Project.vala.c"
2344 }
2345
2346
2347 void project_project_scanDirsForce (ProjectProject* self) {
2348         GeeHashMap* _tmp0_;
2349         GeeMapIterator* _tmp1_ = NULL;
2350         GeeMapIterator* iter;
2351 #line 526 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2352         g_return_if_fail (self != NULL);
2353 #line 528 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2354         self->priv->is_scanned = TRUE;
2355 #line 529 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2356         _tmp0_ = self->paths;
2357 #line 529 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2358         _tmp1_ = gee_abstract_map_map_iterator ((GeeAbstractMap*) _tmp0_);
2359 #line 529 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2360         iter = _tmp1_;
2361 #line 530 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2362         while (TRUE) {
2363 #line 2364 "Project.vala.c"
2364                 GeeMapIterator* _tmp2_;
2365                 gboolean _tmp3_ = FALSE;
2366                 GeeMapIterator* _tmp4_;
2367                 gpointer _tmp5_ = NULL;
2368                 gchar* _tmp6_;
2369                 gboolean _tmp7_;
2370                 GeeMapIterator* _tmp8_;
2371                 gpointer _tmp9_ = NULL;
2372                 gchar* _tmp10_;
2373 #line 530 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2374                 _tmp2_ = iter;
2375 #line 530 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2376                 _tmp3_ = gee_map_iterator_next (_tmp2_);
2377 #line 530 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2378                 if (!_tmp3_) {
2379 #line 530 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2380                         break;
2381 #line 2382 "Project.vala.c"
2382                 }
2383 #line 532 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2384                 _tmp4_ = iter;
2385 #line 532 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2386                 _tmp5_ = gee_map_iterator_get_value (_tmp4_);
2387 #line 532 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2388                 _tmp6_ = (gchar*) _tmp5_;
2389 #line 532 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2390                 _tmp7_ = g_strcmp0 (_tmp6_, "dir") != 0;
2391 #line 532 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2392                 _g_free0 (_tmp6_);
2393 #line 532 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2394                 if (_tmp7_) {
2395 #line 533 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2396                         continue;
2397 #line 2398 "Project.vala.c"
2398                 }
2399 #line 535 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2400                 _tmp8_ = iter;
2401 #line 535 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2402                 _tmp9_ = gee_map_iterator_get_key (_tmp8_);
2403 #line 535 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2404                 _tmp10_ = (gchar*) _tmp9_;
2405 #line 535 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2406                 project_project_scanDir (self, _tmp10_, 0);
2407 #line 535 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2408                 _g_free0 (_tmp10_);
2409 #line 2410 "Project.vala.c"
2410         }
2411 #line 526 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2412         _g_object_unref0 (iter);
2413 #line 2414 "Project.vala.c"
2414 }
2415
2416
2417 static gchar string_get (const gchar* self, glong index) {
2418         gchar result = '\0';
2419         glong _tmp0_;
2420         gchar _tmp1_;
2421 #line 965 "/usr/share/vala-0.20/vapi/glib-2.0.vapi"
2422         g_return_val_if_fail (self != NULL, '\0');
2423 #line 966 "/usr/share/vala-0.20/vapi/glib-2.0.vapi"
2424         _tmp0_ = index;
2425 #line 966 "/usr/share/vala-0.20/vapi/glib-2.0.vapi"
2426         _tmp1_ = ((gchar*) self)[_tmp0_];
2427 #line 966 "/usr/share/vala-0.20/vapi/glib-2.0.vapi"
2428         result = _tmp1_;
2429 #line 966 "/usr/share/vala-0.20/vapi/glib-2.0.vapi"
2430         return result;
2431 #line 2432 "Project.vala.c"
2432 }
2433
2434
2435 static void _g_free0_ (gpointer var) {
2436 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2437         var = (g_free (var), NULL);
2438 #line 2439 "Project.vala.c"
2439 }
2440
2441
2442 static void _g_list_free__g_free0_ (GList* self) {
2443 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2444         g_list_foreach (self, (GFunc) _g_free0_, NULL);
2445 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2446         g_list_free (self);
2447 #line 2448 "Project.vala.c"
2448 }
2449
2450
2451 void project_project_scanDir (ProjectProject* self, const gchar* dir, gint dp) {
2452         gint _tmp0_;
2453         GList* subs;
2454         const gchar* _tmp1_;
2455         GFile* _tmp2_ = NULL;
2456         GFile* f;
2457         GError * _inner_error_ = NULL;
2458 #line 541 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2459         g_return_if_fail (self != NULL);
2460 #line 541 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2461         g_return_if_fail (dir != NULL);
2462 #line 545 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2463         _tmp0_ = dp;
2464 #line 545 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2465         if (_tmp0_ > 5) {
2466 #line 546 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2467                 return;
2468 #line 2469 "Project.vala.c"
2469         }
2470 #line 550 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2471         subs = NULL;
2472 #line 551 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2473         _tmp1_ = dir;
2474 #line 551 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2475         _tmp2_ = g_file_new_for_path (_tmp1_);
2476 #line 551 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2477         f = _tmp2_;
2478 #line 2479 "Project.vala.c"
2479         {
2480                 GFile* _tmp3_;
2481                 GFileEnumerator* _tmp4_ = NULL;
2482                 GFileEnumerator* file_enum;
2483                 GFileInfo* next_file = NULL;
2484 #line 553 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2485                 _tmp3_ = f;
2486 #line 553 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2487                 _tmp4_ = g_file_enumerate_children (_tmp3_, G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME, G_FILE_QUERY_INFO_NONE, NULL, &_inner_error_);
2488 #line 553 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2489                 file_enum = _tmp4_;
2490 #line 553 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2491                 if (_inner_error_ != NULL) {
2492 #line 553 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2493                         if (_inner_error_->domain == PROJECT_ERROR) {
2494 #line 2495 "Project.vala.c"
2495                                 goto __catch10_project_error;
2496                         }
2497                         goto __catch10_g_error;
2498                 }
2499 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2500                 while (TRUE) {
2501 #line 2502 "Project.vala.c"
2502                         GFileEnumerator* _tmp5_;
2503                         GFileInfo* _tmp6_ = NULL;
2504                         GFileInfo* _tmp7_;
2505                         GFileInfo* _tmp8_;
2506                         GFileInfo* _tmp9_;
2507                         const gchar* _tmp10_ = NULL;
2508                         gchar* _tmp11_;
2509                         gchar* fn;
2510                         const gchar* _tmp12_;
2511                         gchar _tmp13_ = '\0';
2512                         const gchar* _tmp14_;
2513                         gchar* _tmp15_;
2514                         gchar* _tmp16_;
2515                         const gchar* _tmp17_;
2516                         gchar* _tmp18_;
2517                         gchar* _tmp19_;
2518                         gboolean _tmp20_ = FALSE;
2519                         gboolean _tmp21_;
2520                         const gchar* _tmp27_;
2521                         gboolean _tmp28_ = FALSE;
2522                         const gchar* _tmp29_;
2523                         gchar* _tmp30_;
2524                         gchar* xt;
2525                         const gchar* _tmp31_;
2526                         const gchar* _tmp32_;
2527                         gchar* _tmp33_;
2528                         gchar* _tmp34_;
2529                         const gchar* _tmp35_;
2530                         gchar* _tmp36_;
2531                         gchar* _tmp37_;
2532                         JsRenderJsRender* _tmp38_ = NULL;
2533                         JsRenderJsRender* _tmp39_;
2534                         JsRenderJsRender* el;
2535                         GeeHashMap* _tmp40_;
2536                         const gchar* _tmp41_;
2537                         gchar* _tmp42_;
2538                         gchar* _tmp43_;
2539                         const gchar* _tmp44_;
2540                         gchar* _tmp45_;
2541                         gchar* _tmp46_;
2542                         JsRenderJsRender* _tmp47_;
2543 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2544                         _tmp5_ = file_enum;
2545 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2546                         _tmp6_ = g_file_enumerator_next_file (_tmp5_, NULL, &_inner_error_);
2547 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2548                         _tmp7_ = _tmp6_;
2549 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2550                         if (_inner_error_ != NULL) {
2551 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2552                                 _g_object_unref0 (next_file);
2553 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2554                                 _g_object_unref0 (file_enum);
2555 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2556                                 if (_inner_error_->domain == PROJECT_ERROR) {
2557 #line 2558 "Project.vala.c"
2558                                         goto __catch10_project_error;
2559                                 }
2560                                 goto __catch10_g_error;
2561                         }
2562 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2563                         _g_object_unref0 (next_file);
2564 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2565                         next_file = _tmp7_;
2566 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2567                         _tmp8_ = next_file;
2568 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2569                         if (!(_tmp8_ != NULL)) {
2570 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2571                                 break;
2572 #line 2573 "Project.vala.c"
2573                         }
2574 #line 558 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2575                         _tmp9_ = next_file;
2576 #line 558 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2577                         _tmp10_ = g_file_info_get_display_name (_tmp9_);
2578 #line 558 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2579                         _tmp11_ = g_strdup (_tmp10_);
2580 #line 558 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2581                         fn = _tmp11_;
2582 #line 563 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2583                         _tmp12_ = fn;
2584 #line 563 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2585                         _tmp13_ = string_get (_tmp12_, (glong) 0);
2586 #line 563 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2587                         if (_tmp13_ == '.') {
2588 #line 564 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2589                                 _g_free0 (fn);
2590 #line 564 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2591                                 continue;
2592 #line 2593 "Project.vala.c"
2593                         }
2594 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2595                         _tmp14_ = dir;
2596 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2597                         _tmp15_ = g_strconcat (_tmp14_, "/", NULL);
2598 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2599                         _tmp16_ = _tmp15_;
2600 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2601                         _tmp17_ = fn;
2602 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2603                         _tmp18_ = g_strconcat (_tmp16_, _tmp17_, NULL);
2604 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2605                         _tmp19_ = _tmp18_;
2606 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2607                         _tmp20_ = g_file_test (_tmp19_, G_FILE_TEST_IS_DIR);
2608 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2609                         _tmp21_ = _tmp20_;
2610 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2611                         _g_free0 (_tmp19_);
2612 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2613                         _g_free0 (_tmp16_);
2614 #line 567 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2615                         if (_tmp21_) {
2616 #line 2617 "Project.vala.c"
2617                                 const gchar* _tmp22_;
2618                                 gchar* _tmp23_;
2619                                 gchar* _tmp24_;
2620                                 const gchar* _tmp25_;
2621                                 gchar* _tmp26_;
2622 #line 568 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2623                                 _tmp22_ = dir;
2624 #line 568 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2625                                 _tmp23_ = g_strconcat (_tmp22_, "/", NULL);
2626 #line 568 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2627                                 _tmp24_ = _tmp23_;
2628 #line 568 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2629                                 _tmp25_ = fn;
2630 #line 568 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2631                                 _tmp26_ = g_strconcat (_tmp24_, _tmp25_, NULL);
2632 #line 568 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2633                                 subs = g_list_append (subs, _tmp26_);
2634 #line 568 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2635                                 _g_free0 (_tmp24_);
2636 #line 569 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2637                                 _g_free0 (fn);
2638 #line 569 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2639                                 continue;
2640 #line 2641 "Project.vala.c"
2641                         }
2642 #line 572 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2643                         _tmp27_ = fn;
2644 #line 572 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2645                         _tmp28_ = g_regex_match_simple ("\\.bjs$", _tmp27_, 0, 0);
2646 #line 572 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2647                         if (!_tmp28_) {
2648 #line 574 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2649                                 _g_free0 (fn);
2650 #line 574 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2651                                 continue;
2652 #line 2653 "Project.vala.c"
2653                         }
2654 #line 597 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2655                         _tmp29_ = self->xtype;
2656 #line 597 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2657                         _tmp30_ = g_strdup (_tmp29_);
2658 #line 597 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2659                         xt = _tmp30_;
2660 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2661                         _tmp31_ = xt;
2662 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2663                         _tmp32_ = dir;
2664 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2665                         _tmp33_ = g_strconcat (_tmp32_, "/", NULL);
2666 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2667                         _tmp34_ = _tmp33_;
2668 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2669                         _tmp35_ = fn;
2670 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2671                         _tmp36_ = g_strconcat (_tmp34_, _tmp35_, NULL);
2672 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2673                         _tmp37_ = _tmp36_;
2674 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2675                         _tmp38_ = js_render_js_render_factory (_tmp31_, self, _tmp37_);
2676 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2677                         _tmp39_ = _tmp38_;
2678 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2679                         _g_free0 (_tmp37_);
2680 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2681                         _g_free0 (_tmp34_);
2682 #line 598 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2683                         el = _tmp39_;
2684 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2685                         _tmp40_ = self->files;
2686 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2687                         _tmp41_ = dir;
2688 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2689                         _tmp42_ = g_strconcat (_tmp41_, "/", NULL);
2690 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2691                         _tmp43_ = _tmp42_;
2692 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2693                         _tmp44_ = fn;
2694 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2695                         _tmp45_ = g_strconcat (_tmp43_, _tmp44_, NULL);
2696 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2697                         _tmp46_ = _tmp45_;
2698 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2699                         _tmp47_ = el;
2700 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2701                         gee_abstract_map_set ((GeeAbstractMap*) _tmp40_, _tmp46_, _tmp47_);
2702 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2703                         _g_free0 (_tmp46_);
2704 #line 599 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2705                         _g_free0 (_tmp43_);
2706 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2707                         _g_object_unref0 (el);
2708 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2709                         _g_free0 (xt);
2710 #line 557 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2711                         _g_free0 (fn);
2712 #line 2713 "Project.vala.c"
2713                 }
2714 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2715                 _g_object_unref0 (next_file);
2716 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2717                 _g_object_unref0 (file_enum);
2718 #line 2719 "Project.vala.c"
2719         }
2720         goto __finally10;
2721         __catch10_project_error:
2722         {
2723                 GError* e = NULL;
2724                 GError* _tmp48_;
2725                 const gchar* _tmp49_;
2726                 gchar* _tmp50_;
2727                 gchar* _tmp51_;
2728                 gchar* _tmp52_;
2729                 gchar* _tmp53_;
2730 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2731                 e = _inner_error_;
2732 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2733                 _inner_error_ = NULL;
2734 #line 605 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2735                 _tmp48_ = e;
2736 #line 605 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2737                 _tmp49_ = _tmp48_->message;
2738 #line 605 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2739                 _tmp50_ = g_strconcat ("Project::scanDirs failed : ", _tmp49_, NULL);
2740 #line 605 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2741                 _tmp51_ = _tmp50_;
2742 #line 605 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2743                 _tmp52_ = g_strconcat (_tmp51_, "\n", NULL);
2744 #line 605 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2745                 _tmp53_ = _tmp52_;
2746 #line 605 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2747                 g_print ("%s", _tmp53_);
2748 #line 605 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2749                 _g_free0 (_tmp53_);
2750 #line 605 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2751                 _g_free0 (_tmp51_);
2752 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2753                 _g_error_free0 (e);
2754 #line 2755 "Project.vala.c"
2755         }
2756         goto __finally10;
2757         __catch10_g_error:
2758         {
2759                 GError* e = NULL;
2760                 GError* _tmp54_;
2761                 const gchar* _tmp55_;
2762                 gchar* _tmp56_;
2763                 gchar* _tmp57_;
2764                 gchar* _tmp58_;
2765                 gchar* _tmp59_;
2766 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2767                 e = _inner_error_;
2768 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2769                 _inner_error_ = NULL;
2770 #line 607 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2771                 _tmp54_ = e;
2772 #line 607 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2773                 _tmp55_ = _tmp54_->message;
2774 #line 607 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2775                 _tmp56_ = g_strconcat ("Project::scanDirs failed : ", _tmp55_, NULL);
2776 #line 607 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2777                 _tmp57_ = _tmp56_;
2778 #line 607 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2779                 _tmp58_ = g_strconcat (_tmp57_, "\n", NULL);
2780 #line 607 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2781                 _tmp59_ = _tmp58_;
2782 #line 607 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2783                 g_print ("%s", _tmp59_);
2784 #line 607 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2785                 _g_free0 (_tmp59_);
2786 #line 607 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2787                 _g_free0 (_tmp57_);
2788 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2789                 _g_error_free0 (e);
2790 #line 2791 "Project.vala.c"
2791         }
2792         __finally10:
2793 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2794         if (_inner_error_ != NULL) {
2795 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2796                 _g_object_unref0 (f);
2797 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2798                 __g_list_free__g_free0_0 (subs);
2799 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2800                 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);
2801 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2802                 g_clear_error (&_inner_error_);
2803 #line 552 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2804                 return;
2805 #line 2806 "Project.vala.c"
2806         }
2807         {
2808                 gint i;
2809 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2810                 i = 0;
2811 #line 2812 "Project.vala.c"
2812                 {
2813                         gboolean _tmp60_;
2814 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2815                         _tmp60_ = TRUE;
2816 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2817                         while (TRUE) {
2818 #line 2819 "Project.vala.c"
2819                                 gboolean _tmp61_;
2820                                 gint _tmp63_;
2821                                 GList* _tmp64_;
2822                                 guint _tmp65_ = 0U;
2823                                 GList* _tmp66_;
2824                                 gint _tmp67_;
2825                                 gconstpointer _tmp68_ = NULL;
2826                                 gint _tmp69_;
2827 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2828                                 _tmp61_ = _tmp60_;
2829 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2830                                 if (!_tmp61_) {
2831 #line 2832 "Project.vala.c"
2832                                         gint _tmp62_;
2833 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2834                                         _tmp62_ = i;
2835 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2836                                         i = _tmp62_ + 1;
2837 #line 2838 "Project.vala.c"
2838                                 }
2839 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2840                                 _tmp60_ = FALSE;
2841 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2842                                 _tmp63_ = i;
2843 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2844                                 _tmp64_ = subs;
2845 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2846                                 _tmp65_ = g_list_length (_tmp64_);
2847 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2848                                 if (!(((guint) _tmp63_) < _tmp65_)) {
2849 #line 609 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2850                                         break;
2851 #line 2852 "Project.vala.c"
2852                                 }
2853 #line 611 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2854                                 _tmp66_ = subs;
2855 #line 611 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2856                                 _tmp67_ = i;
2857 #line 611 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2858                                 _tmp68_ = g_list_nth_data (_tmp66_, (guint) _tmp67_);
2859 #line 611 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2860                                 _tmp69_ = dp;
2861 #line 611 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2862                                 project_project_scanDir (self, (const gchar*) _tmp68_, _tmp69_ + 1);
2863 #line 2864 "Project.vala.c"
2864                         }
2865                 }
2866         }
2867 #line 541 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2868         _g_object_unref0 (f);
2869 #line 541 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2870         __g_list_free__g_free0_0 (subs);
2871 #line 2872 "Project.vala.c"
2872 }
2873
2874
2875 static void project_project_class_init (ProjectProjectClass * klass) {
2876 #line 26 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2877         project_project_parent_class = g_type_class_peek_parent (klass);
2878 #line 26 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2879         g_type_class_add_private (klass, sizeof (ProjectProjectPrivate));
2880 #line 26 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2881         G_OBJECT_CLASS (klass)->finalize = project_project_finalize;
2882 #line 26 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2883         g_signal_new ("on_changed", PROJECT_TYPE_PROJECT, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
2884 #line 2885 "Project.vala.c"
2885 }
2886
2887
2888 static void project_project_instance_init (ProjectProject * self) {
2889         gchar* _tmp0_;
2890         gchar* _tmp1_;
2891         gchar* _tmp2_;
2892         gchar* _tmp3_;
2893         gchar* _tmp4_;
2894 #line 26 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2895         self->priv = PROJECT_PROJECT_GET_PRIVATE (self);
2896 #line 31 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2897         _tmp0_ = g_strdup ("");
2898 #line 31 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2899         self->fn = _tmp0_;
2900 #line 32 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2901         _tmp1_ = g_strdup ("");
2902 #line 32 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2903         self->name = _tmp1_;
2904 #line 33 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2905         _tmp2_ = g_strdup ("");
2906 #line 33 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2907         self->runhtml = _tmp2_;
2908 #line 34 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2909         _tmp3_ = g_strdup ("");
2910 #line 34 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2911         self->base_template = _tmp3_;
2912 #line 35 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2913         _tmp4_ = g_strdup ("");
2914 #line 35 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2915         self->rootURL = _tmp4_;
2916 #line 2917 "Project.vala.c"
2917 }
2918
2919
2920 static void project_project_finalize (GObject* obj) {
2921         ProjectProject * self;
2922 #line 26 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2923         self = G_TYPE_CHECK_INSTANCE_CAST (obj, PROJECT_TYPE_PROJECT, ProjectProject);
2924 #line 30 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2925         _g_free0 (self->id);
2926 #line 31 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2927         _g_free0 (self->fn);
2928 #line 32 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2929         _g_free0 (self->name);
2930 #line 33 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2931         _g_free0 (self->runhtml);
2932 #line 34 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2933         _g_free0 (self->base_template);
2934 #line 35 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2935         _g_free0 (self->rootURL);
2936 #line 36 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2937         _g_object_unref0 (self->paths);
2938 #line 37 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2939         _g_object_unref0 (self->files);
2940 #line 39 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2941         _g_free0 (self->xtype);
2942 #line 26 "/home/alan/gitlive/app.Builder.js/Project/Project.vala"
2943         G_OBJECT_CLASS (project_project_parent_class)->finalize (obj);
2944 #line 2945 "Project.vala.c"
2945 }
2946
2947
2948 GType project_project_get_type (void) {
2949         static volatile gsize project_project_type_id__volatile = 0;
2950         if (g_once_init_enter (&project_project_type_id__volatile)) {
2951                 static const GTypeInfo g_define_type_info = { sizeof (ProjectProjectClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) project_project_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ProjectProject), 0, (GInstanceInitFunc) project_project_instance_init, NULL };
2952                 GType project_project_type_id;
2953                 project_project_type_id = g_type_register_static (G_TYPE_OBJECT, "ProjectProject", &g_define_type_info, 0);
2954                 g_once_init_leave (&project_project_type_id__volatile, project_project_type_id);
2955         }
2956         return project_project_type_id__volatile;
2957 }
2958
2959
2960 static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
2961         if ((array != NULL) && (destroy_func != NULL)) {
2962                 int i;
2963                 for (i = 0; i < array_length; i = i + 1) {
2964                         if (((gpointer*) array)[i] != NULL) {
2965                                 destroy_func (((gpointer*) array)[i]);
2966                         }
2967                 }
2968         }
2969 }
2970
2971
2972 static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
2973         _vala_array_destroy (array, array_length, destroy_func);
2974         g_free (array);
2975 }
2976
2977
2978 static gint _vala_array_length (gpointer array) {
2979         int length;
2980         length = 0;
2981         if (array) {
2982                 while (((gpointer*) array)[length]) {
2983                         length++;
2984                 }
2985         }
2986         return length;
2987 }
2988
2989
2990