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