X-Git-Url: https://git.draconx.ca/gitweb/gob-dx.git/blobdiff_plain/a8ea1a669f332b0ed29c6271896476f59f357533..8445442abc02fc325a9ce228759403113583818c:/src/treefuncs.c diff --git a/src/treefuncs.c b/src/treefuncs.c index 6c2ca40..24b17e8 100644 --- a/src/treefuncs.c +++ b/src/treefuncs.c @@ -105,6 +105,7 @@ enum { QUARK_interfaces_STEAL, QUARK_nodes, QUARK_nodes_STEAL, + QUARK_abstract, QUARK_name, QUARK_name_STEAL, QUARK_pointer, @@ -132,6 +133,8 @@ enum { QUARK_set, QUARK_set_STEAL, QUARK_set_line, + QUARK_canonical_name, + QUARK_canonical_name_STEAL, QUARK_nick, QUARK_nick_STEAL, QUARK_blurb, @@ -153,10 +156,14 @@ enum { QUARK_mtype_STEAL, QUARK_gtktypes, QUARK_gtktypes_STEAL, + QUARK_signal_name, + QUARK_signal_name_STEAL, QUARK_id, QUARK_id_STEAL, QUARK_args, QUARK_args_STEAL, + QUARK_funcattrs, + QUARK_funcattrs_STEAL, QUARK_onerror, QUARK_onerror_STEAL, QUARK_defreturn, @@ -212,6 +219,7 @@ ensure_quarks (void) g_hash_table_insert (quark_ht, "interfaces:steal", GINT_TO_POINTER (QUARK_interfaces_STEAL)); g_hash_table_insert (quark_ht, "nodes", GINT_TO_POINTER (QUARK_nodes)); g_hash_table_insert (quark_ht, "nodes:steal", GINT_TO_POINTER (QUARK_nodes_STEAL)); + g_hash_table_insert (quark_ht, "abstract", GINT_TO_POINTER (QUARK_abstract)); g_hash_table_insert (quark_ht, "name", GINT_TO_POINTER (QUARK_name)); g_hash_table_insert (quark_ht, "name:steal", GINT_TO_POINTER (QUARK_name_STEAL)); g_hash_table_insert (quark_ht, "pointer", GINT_TO_POINTER (QUARK_pointer)); @@ -239,6 +247,8 @@ ensure_quarks (void) g_hash_table_insert (quark_ht, "set", GINT_TO_POINTER (QUARK_set)); g_hash_table_insert (quark_ht, "set:steal", GINT_TO_POINTER (QUARK_set_STEAL)); g_hash_table_insert (quark_ht, "set_line", GINT_TO_POINTER (QUARK_set_line)); + g_hash_table_insert (quark_ht, "canonical_name", GINT_TO_POINTER (QUARK_canonical_name)); + g_hash_table_insert (quark_ht, "canonical_name:steal", GINT_TO_POINTER (QUARK_canonical_name_STEAL)); g_hash_table_insert (quark_ht, "nick", GINT_TO_POINTER (QUARK_nick)); g_hash_table_insert (quark_ht, "nick:steal", GINT_TO_POINTER (QUARK_nick_STEAL)); g_hash_table_insert (quark_ht, "blurb", GINT_TO_POINTER (QUARK_blurb)); @@ -260,10 +270,14 @@ ensure_quarks (void) g_hash_table_insert (quark_ht, "mtype:steal", GINT_TO_POINTER (QUARK_mtype_STEAL)); g_hash_table_insert (quark_ht, "gtktypes", GINT_TO_POINTER (QUARK_gtktypes)); g_hash_table_insert (quark_ht, "gtktypes:steal", GINT_TO_POINTER (QUARK_gtktypes_STEAL)); + g_hash_table_insert (quark_ht, "signal_name", GINT_TO_POINTER (QUARK_signal_name)); + g_hash_table_insert (quark_ht, "signal_name:steal", GINT_TO_POINTER (QUARK_signal_name_STEAL)); g_hash_table_insert (quark_ht, "id", GINT_TO_POINTER (QUARK_id)); g_hash_table_insert (quark_ht, "id:steal", GINT_TO_POINTER (QUARK_id_STEAL)); g_hash_table_insert (quark_ht, "args", GINT_TO_POINTER (QUARK_args)); g_hash_table_insert (quark_ht, "args:steal", GINT_TO_POINTER (QUARK_args_STEAL)); + g_hash_table_insert (quark_ht, "funcattrs", GINT_TO_POINTER (QUARK_funcattrs)); + g_hash_table_insert (quark_ht, "funcattrs:steal", GINT_TO_POINTER (QUARK_funcattrs_STEAL)); g_hash_table_insert (quark_ht, "onerror", GINT_TO_POINTER (QUARK_onerror)); g_hash_table_insert (quark_ht, "onerror:steal", GINT_TO_POINTER (QUARK_onerror_STEAL)); g_hash_table_insert (quark_ht, "defreturn", GINT_TO_POINTER (QUARK_defreturn)); @@ -360,6 +374,7 @@ copy_class (Class * self) new->chunk_size = g_strdup (self->chunk_size); new->interfaces = g_list_copy (self->interfaces); COPY_LIST_VALS(new->interfaces, g_strdup); new->nodes = node_list_copy (self->nodes); + new->abstract = self->abstract; return new; } @@ -446,8 +461,10 @@ copy_method (Method * self) new->otype = g_strdup (self->otype); new->gtktypes = g_list_copy (self->gtktypes); COPY_LIST_VALS(new->gtktypes, g_strdup); new->flags = g_list_copy (self->flags); COPY_LIST_VALS(new->flags, g_strdup); + new->signal_name = g_strdup (self->signal_name); new->id = g_strdup (self->id); new->args = node_list_copy (self->args); + new->funcattrs = g_strdup (self->funcattrs); new->onerror = g_strdup (self->onerror); new->defreturn = g_strdup (self->defreturn); new->cbuf = g_strdup (self->cbuf); @@ -472,6 +489,7 @@ copy_property (Property * self) new->ptype = copy_type (self->ptype); new->flags = g_list_copy (self->flags); COPY_LIST_VALS(new->flags, g_strdup); new->name = g_strdup (self->name); + new->canonical_name = g_strdup (self->canonical_name); new->nick = g_strdup (self->nick); new->blurb = g_strdup (self->blurb); new->minimum = g_strdup (self->minimum); @@ -635,8 +653,10 @@ free_method (Method * self) g_free (self->otype); g_list_foreach (self->gtktypes, (GFunc)g_free, NULL); g_list_free (self->gtktypes); g_list_foreach (self->flags, (GFunc)g_free, NULL); g_list_free (self->flags); + g_free (self->signal_name); g_free (self->id); node_list_free (self->args); + g_free (self->funcattrs); g_free (self->onerror); g_free (self->defreturn); g_free (self->cbuf); @@ -653,6 +673,7 @@ free_property (Property * self) free_type (self->ptype); g_list_foreach (self->flags, (GFunc)g_free, NULL); g_list_free (self->flags); g_free (self->name); + g_free (self->canonical_name); g_free (self->nick); g_free (self->blurb); g_free (self->minimum); @@ -947,6 +968,11 @@ setv_class (Class * self, va_list __ap) self->nodes = nodes; break; } + case QUARK_abstract: { + gboolean abstract = va_arg (__ap, gboolean); + self->abstract = abstract; + break; + } default: g_warning ("Argument named 'Class::%s' does not exist", arg); break; @@ -1269,6 +1295,18 @@ setv_method (Method * self, va_list __ap) self->flags = flags; break; } + case QUARK_signal_name: { + char * signal_name = va_arg (__ap, char *); + char * __old_value = self->signal_name; + self->signal_name = g_strdup (signal_name); + g_free (__old_value); + break; + } + case QUARK_signal_name_STEAL: { + char * signal_name = va_arg (__ap, char *); + self->signal_name = signal_name; + break; + } case QUARK_id: { char * id = va_arg (__ap, char *); char * __old_value = self->id; @@ -1293,6 +1331,18 @@ setv_method (Method * self, va_list __ap) self->args = args; break; } + case QUARK_funcattrs: { + char * funcattrs = va_arg (__ap, char *); + char * __old_value = self->funcattrs; + self->funcattrs = g_strdup (funcattrs); + g_free (__old_value); + break; + } + case QUARK_funcattrs_STEAL: { + char * funcattrs = va_arg (__ap, char *); + self->funcattrs = funcattrs; + break; + } case QUARK_onerror: { char * onerror = va_arg (__ap, char *); char * __old_value = self->onerror; @@ -1430,6 +1480,18 @@ setv_property (Property * self, va_list __ap) self->name = name; break; } + case QUARK_canonical_name: { + char * canonical_name = va_arg (__ap, char *); + char * __old_value = self->canonical_name; + self->canonical_name = g_strdup (canonical_name); + g_free (__old_value); + break; + } + case QUARK_canonical_name_STEAL: { + char * canonical_name = va_arg (__ap, char *); + self->canonical_name = canonical_name; + break; + } case QUARK_nick: { char * nick = va_arg (__ap, char *); char * __old_value = self->nick;