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