summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorColin Walters <walters@src.gnome.org>2008-08-06 17:25:24 +0000
committerColin Walters <walters@src.gnome.org>2008-08-06 17:25:24 +0000
commit7180c04a3df9a5fee853d44a3fc4b16123a405be (patch)
tree8672ee20b28ca3896ce755d9ca873690175ed946
parent87b01446c7621be92a96b91d2123b38ce3df7249 (diff)
downloadgobject-introspection-7180c04a3df9a5fee853d44a3fc4b16123a405be.tar.gz
Lots of half finished changes
svn path=/branches/gir-compiler/; revision=302
-rw-r--r--tests/boxed.test38
-rwxr-xr-xtests/invoke/testfns.gir34
-rwxr-xr-xtests/roundtrips.sh36
-rw-r--r--tools/generate.c13
-rw-r--r--tools/girparser.c116
-rw-r--r--tools/girwriter.c57
-rw-r--r--tools/scanner.c203
7 files changed, 280 insertions, 217 deletions
diff --git a/tests/boxed.test b/tests/boxed.test
index 466afa15..e4480fce 100644
--- a/tests/boxed.test
+++ b/tests/boxed.test
@@ -4,21 +4,39 @@
xmlns:c="http://www.gtk.org/introspection/c/1.0"
xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
<namespace name="Foo">
- <boxed name="boxed1" type-name="BoxedType1" get-type="boxed1_get_type" deprecated="1">
- <field name="field1" readable="1" writable="1" offset="0" c:type="guint32" />
- <field name="field2" readable="1" writable="1" offset="4" c:type="guint32" />
- <field name="field3" readable="1" writable="1" offset="8" c:type="guint32" />
+ <glib:boxed glib:name="BoxedType1" c:type="boxed1" glib:get-type="boxed1_get_type" deprecated="1">
+ <field name="field1" readable="1" writable="1" offset="0">
+ <type name="guint32" c:type="guint32"/>
+ </field>
+ <field name="field2" readable="1" writable="1" offset="4">
+ <type name="guint32" c:type="guint32"/>
+ </field>
+ <field name="field3" readable="1" writable="1" offset="8">
+ <type name="guint32" c:type="guint32"/>
+ </field>
<method name="frob_boxed1" c:identifier="frob_boxed1">
- <return-type c:type="void" />
+ <return-value>
+ <type name="none" c:type="void" />
+ </return-value>
<parameters>
- <parameter name="box" c:type="boxed1*" transfer="full" direction="in" />
- <parameter name="w" c:type="GList<boxed2*>*" transfer="full" direction="in" />
- <parameter name="t" c:type="GHashTable<utf8,gint64>*" transfer="full" direction="in" />
- <parameter name="e" c:type="GError*" transfer="full" direction="out" />
+ <parameter name="box" transfer="full" direction="in">
+ <type name="BoxedType1" c:type="boxed1*"/>
+ </parameter>
+ <parameter name="w" transfer="full" direction="in">
+ <type name="GList" c:type="GList*"/>
+ </parameter>
+ <parameter name="t"transfer="full" direction="in">
+ <type name="GHashTable" c:type="GHashTable*"/>
+ </parameter>
+ <parameter name="e" transfer="full" direction="out">
+ <type name="GError" c:type="GError**"/>
+ </parameter>
</parameters>
</method>
<method name="lart" c:identifier="lart">
- <return-type c:type="gboolean" />
+ <return-value>
+ <type name="boolean" c:type="gboolean"/>x
+ </return-value>
<parameters>
<parameter name="box" c:type="boxed2*" transfer="full" direction="in" />
<parameter name="val" c:type="gint*" transfer="full" direction="inout" />
diff --git a/tests/invoke/testfns.gir b/tests/invoke/testfns.gir
index d6cd3340..4d6c520d 100755
--- a/tests/invoke/testfns.gir
+++ b/tests/invoke/testfns.gir
@@ -5,59 +5,59 @@
xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
<namespace name="test">
<function name="test1" c:identifier="test1">
- <return-type type="gint"/>
+ <return-type c:type="gint"/>
<parameters>
- <parameter name="in" type="gint" direction="in"/>
+ <parameter name="in" c:type="gint" direction="in"/>
</parameters>
</function>
<function name="test2" c:identifier="test2">
- <return-type type="void"/>
+ <return-type c:type="void"/>
<parameters>
- <parameter name="in" type="gint" direction="in"/>
- <parameter name="out" type="gint" direction="out"/>
+ <parameter name="in" c:type="gint" direction="in"/>
+ <parameter name="out" c:type="gint" direction="out"/>
</parameters>
</function>
<function name="test3" c:identifier="test3">
- <return-type type="void"/>
+ <return-type c:type="void"/>
<parameters>
- <parameter name="inout" type="gint" direction="inout"/>
+ <parameter name="inout" c:type="gint" direction="inout"/>
</parameters>
</function>
<function name="test4" c:identifier="test4">
- <return-type type="void"/>
+ <return-type c:type="void"/>
<parameters>
- <parameter name="blurb" type="gchar*" direction="in"/>
+ <parameter name="blurb" c:type="gchar*" direction="in"/>
</parameters>
</function>
<function name="test5" c:identifier="test5">
- <return-type type="void"/>
+ <return-type c:type="void"/>
<parameters>
- <parameter name="blurb" type="gchar*" direction="out" transfer="full"/>
- <parameter name="len" type="gint" direction="out"/>
+ <parameter name="blurb" c:type="gchar*" direction="out" transfer="full"/>
+ <parameter name="len" c:type="gint" direction="out"/>
</parameters>
</function>
<function name="test6" c:identifier="test6">
- <return-type type="gint"/>
+ <return-type c:type="gint"/>
<parameters>
- <parameter name="list" type="GList<gint>*" direction="in"/>
+ <parameter name="list" c:type="GList<gint>*" direction="in"/>
</parameters>
</function>
<function name="test7" c:identifier="test7">
- <return-type type="utf8" transfer="full"/>
+ <return-type c:type="utf8" transfer="full"/>
<parameters>
- <parameter name="list" type="GList<utf8>*" direction="in"/>
+ <parameter name="list" c:type="GList<utf8>*" direction="in"/>
</parameters>
</function>
<function name="broken" c:identifier="broken">
- <return-type type="void"/>
+ <return-type c:type="void"/>
</function>
</namespace>
diff --git a/tests/roundtrips.sh b/tests/roundtrips.sh
index 65ef78a4..fb3f049d 100755
--- a/tests/roundtrips.sh
+++ b/tests/roundtrips.sh
@@ -1,26 +1,28 @@
#! /bin/sh
-SIMPLE_TESTS="array.test boxed.test enum.test errors.test function.test interface.test struct.test union.test"
+set -x
+set -e
-for i in $SIMPLE_TESTS; do
- echo $i
- ../tools/g-idl-compiler --raw $srcdir/$i > $i.1;
- ../tools/g-idl-generate --raw $i.1 > $i.2;
+TESTFILES=$(echo "${srcdir}"/../../gir-repository/gir/*.gir)
+
+for i in $TESTFILES; do
+ ../tools/g-ir-compiler --raw $i > $i.1;
+ ../tools/g-ir-generate --raw $i.1 > $i.2;
diff -u $srcdir/$i $i.2 || exit 1;
rm $i.1 $i.2
done
-../tools/g-idl-compiler --raw --module=Foo $srcdir/object.test $srcdir/gobject.test > object.test.1
-../tools/g-idl-generate --raw object.test.1 > object.test.2
-diff -u $srcdir/object.test object.test.2 || exit 1
-rm object.test.1 object.test.2
+#../tools/g-ir-compiler --raw --module=Foo $srcdir/object.test $srcdir/gobject.test > object.test.1
+#../tools/g-ir-generate --raw object.test.1 > object.test.2
+#diff -u $srcdir/object.test object.test.2 || exit 1
+#rm object.test.1 object.test.2
-../tools/g-idl-compiler --raw --module=Foo $srcdir/xref1.test $srcdir/xref2.test > xref1.test.1
-../tools/g-idl-generate --raw xref1.test.1 > xref1.test.2
-diff -u $srcdir/xref1.test xref1.test.2 || exit 1
-rm xref1.test.1 xref1.test.2
+#../tools/g-ir-compiler --raw --module=Foo $srcdir/xref1.test $srcdir/xref2.test > xref1.test.1
+#../tools/g-ir-generate --raw xref1.test.1 > xref1.test.2
+#diff -u $srcdir/xref1.test xref1.test.2 || exit 1
+#rm xref1.test.1 xref1.test.2
-../tools/g-idl-compiler --raw --module=Bar $srcdir/xref1.test $srcdir/xref2.test > xref2.test.1
-../tools/g-idl-generate --raw xref2.test.1 > xref2.test.2
-diff -u $srcdir/xref2.test xref2.test.2 || exit 1
-rm xref2.test.1 xref2.test.2
+#../tools/g-ir-compiler --raw --module=Bar $srcdir/xref1.test $srcdir/xref2.test > xref2.test.1
+#../tools/g-ir-generate --raw xref2.test.1 > xref2.test.2
+#diff -u $srcdir/xref2.test xref2.test.2 || exit 1
+#rm xref2.test.1 xref2.test.2
diff --git a/tools/generate.c b/tools/generate.c
index 3e057ef1..70085c93 100644
--- a/tools/generate.c
+++ b/tools/generate.c
@@ -237,7 +237,7 @@ write_callable_info (const gchar *namespace,
GITypeInfo *type;
gint i;
- g_fprintf (file, "%*s <return-type type=\"", indent, "");
+ g_fprintf (file, "%*s <return-type c:type=\"", indent, "");
type = g_callable_info_get_return_type (info);
write_type_info (namespace, type, file);
@@ -274,7 +274,7 @@ write_callable_info (const gchar *namespace,
{
GIArgInfo *arg = g_callable_info_get_arg (info, i);
- g_fprintf (file, "%*s <parameter name=\"%s\" type=\"",
+ g_fprintf (file, "%*s <parameter name=\"%s\" c:type=\"",
indent, "", g_base_info_get_name ((GIBaseInfo *) arg));
type = g_arg_info_get_type (arg);
@@ -360,7 +360,7 @@ write_function_info (const gchar *namespace,
else
tag = "function";
- g_fprintf (file, "%*s<%s name=\"%s\" symbol=\"%s\"",
+ g_fprintf (file, "%*s<%s name=\"%s\" c:identifier=\"%s\"",
indent, "", tag, name, symbol);
if (flags & GI_FUNCTION_IS_SETTER)
@@ -1019,7 +1019,10 @@ write_repository (GIRepository *repository,
}
g_fprintf (file, "<?xml version=\"1.0\"?>\n");
- g_fprintf (file, "<api version=\"1.0\">\n");
+ g_fprintf (file, "<repository version=\"1.0\"\n"
+ " xmlns=\"http://www.gtk.org/introspection/core/1.0\"\n"
+ " xmlns:c=\"http://www.gtk.org/introspection/c/1.0\"\n"
+ " xmlns:glib=\"http://www.gtk.org/introspection/glib/1.0\">\n");
for (i = 0; namespaces[i]; i++)
{
@@ -1085,7 +1088,7 @@ write_repository (GIRepository *repository,
g_fprintf (file, " </namespace>\n");
}
- g_fprintf (file, "</api>\n");
+ g_fprintf (file, "</repository>\n");
if (output != NULL)
fclose (file);
diff --git a/tools/girparser.c b/tools/girparser.c
index 7dc8509c..4513ee58 100644
--- a/tools/girparser.c
+++ b/tools/girparser.c
@@ -36,7 +36,8 @@ typedef enum
STATE_ENUM,
STATE_BITFIELD,
STATE_FUNCTION,
- STATE_PARAMETERS,
+ STATE_FUNCTION_RETURN,
+ STATE_FUNCTION_PARAMETERS,
STATE_OBJECT,
STATE_INTERFACE,
STATE_IMPLEMENTS,
@@ -58,6 +59,7 @@ struct _ParseContext
GIrModule *current_module;
GIrNode *current_node;
+ GIrNode *current_parameter;
};
#define MISSING_ATTRIBUTE(error,element,attribute) \
@@ -566,7 +568,7 @@ start_parameter (GMarkupParseContext *context,
const gchar *nullok;
const gchar *transfer;
- type = find_attribute ("type", attribute_names, attribute_values);
+ type = find_attribute ("c:type", attribute_names, attribute_values);
name = find_attribute ("name", attribute_names, attribute_values);
direction = find_attribute ("direction", attribute_names, attribute_values);
retval = find_attribute ("retval", attribute_names, attribute_values);
@@ -701,7 +703,7 @@ start_field (GMarkupParseContext *context,
const gchar *offset;
name = find_attribute ("name", attribute_names, attribute_values);
- type = find_attribute ("type", attribute_names, attribute_values);
+ type = find_attribute ("c:type", attribute_names, attribute_values);
readable = find_attribute ("readable", attribute_names, attribute_values);
writable = find_attribute ("writable", attribute_names, attribute_values);
bits = find_attribute ("bits", attribute_names, attribute_values);
@@ -711,7 +713,7 @@ start_field (GMarkupParseContext *context,
if (name == NULL)
MISSING_ATTRIBUTE (error, element_name, "name");
else if (type == NULL)
- MISSING_ATTRIBUTE (error, element_name, "type");
+ MISSING_ATTRIBUTE (error, element_name, "c:type");
else
{
GIrNodeField *field;
@@ -804,8 +806,8 @@ start_enum (GMarkupParseContext *context,
ParseContext *ctx,
GError **error)
{
- if ((strcmp (element_name, "enum") == 0 && ctx->state == STATE_NAMESPACE) ||
- (strcmp (element_name, "flags") == 0 && ctx->state == STATE_NAMESPACE))
+ if ((strcmp (element_name, "enumeration") == 0 && ctx->state == STATE_NAMESPACE) ||
+ (strcmp (element_name, "bitfield") == 0 && ctx->state == STATE_NAMESPACE))
{
const gchar *name;
const gchar *typename;
@@ -823,7 +825,7 @@ start_enum (GMarkupParseContext *context,
{
GIrNodeEnum *enum_;
- if (strcmp (element_name, "enum") == 0)
+ if (strcmp (element_name, "enumeration") == 0)
enum_ = (GIrNodeEnum *) g_ir_node_new (G_IR_NODE_ENUM);
else
enum_ = (GIrNodeEnum *) g_ir_node_new (G_IR_NODE_FLAGS);
@@ -867,7 +869,7 @@ start_property (GMarkupParseContext *context,
const gchar *construct_only;
name = find_attribute ("name", attribute_names, attribute_values);
- type = find_attribute ("type", attribute_names, attribute_values);
+ type = find_attribute ("c:type", attribute_names, attribute_values);
readable = find_attribute ("readable", attribute_names, attribute_values);
writable = find_attribute ("writable", attribute_names, attribute_values);
construct = find_attribute ("construct", attribute_names, attribute_values);
@@ -876,7 +878,7 @@ start_property (GMarkupParseContext *context,
if (name == NULL)
MISSING_ATTRIBUTE (error, element_name, "name");
else if (type == NULL)
- MISSING_ATTRIBUTE (error, element_name, "type");
+ MISSING_ATTRIBUTE (error, element_name, "c:type");
else
{
GIrNodeProperty *property;
@@ -1002,14 +1004,14 @@ start_constant (GMarkupParseContext *context,
const gchar *deprecated;
name = find_attribute ("name", attribute_names, attribute_values);
- type = find_attribute ("type", attribute_names, attribute_values);
+ type = find_attribute ("c:type", attribute_names, attribute_values);
value = find_attribute ("value", attribute_names, attribute_values);
deprecated = find_attribute ("deprecated", attribute_names, attribute_values);
if (name == NULL)
MISSING_ATTRIBUTE (error, element_name, "name");
else if (type == NULL)
- MISSING_ATTRIBUTE (error, element_name, "type");
+ MISSING_ATTRIBUTE (error, element_name, "c:type");
else if (value == NULL)
MISSING_ATTRIBUTE (error, element_name, "value");
else
@@ -1211,6 +1213,59 @@ start_class (GMarkupParseContext *context,
}
static gboolean
+start_type (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseContext *ctx,
+ GError **error)
+{
+ const gchar *name;
+ const gchar *ctype;
+
+ if (strcmp (element_name, "type") != 0)
+ return FALSE;
+
+ name = find_attribute ("name", attribute_names, attribute_values);
+ ctype = find_attribute ("c:type", attribute_names, attribute_values);
+
+ if (name == NULL)
+ MISSING_ATTRIBUTE (error, element_name, "name");
+ if (ctype == NULL)
+ MISSING_ATTRIBUTE (error, element_name, "c:type");
+
+ switch (ctx->current_node->type)
+ {
+ case G_IR_NODE_FUNCTION_RETURN:
+ {
+ }
+ if (ctx->current_is_return)
+ {
+ func->result = param;
+ }
+ else
+ {
+ }
+ }
+ break;
+ case G_IR_NODE_SIGNAL:
+ {
+ GIrNodeSignal *signal = (GIrNodeSignal *)ctx->current_node;
+ signal->result = param;
+ }
+ break;
+ case G_IR_NODE_VFUNC:
+ {
+ GIrNodeVFunc *vfunc = (GIrNodeVFunc *)ctx->current_node;
+ vfunc->result = param;
+ }
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+}
+
+static gboolean
start_return_type (GMarkupParseContext *context,
const gchar *element_name,
const gchar **attribute_names,
@@ -1218,18 +1273,18 @@ start_return_type (GMarkupParseContext *context,
ParseContext *ctx,
GError **error)
{
- if (strcmp (element_name, "return-type") == 0 &&
+ if (strcmp (element_name, "return-value") == 0 &&
ctx->state == STATE_FUNCTION)
{
const gchar *type;
const gchar *nullok;
const gchar *transfer;
- type = find_attribute ("type", attribute_names, attribute_values);
+ type = find_attribute ("c:type", attribute_names, attribute_values);
nullok = find_attribute ("null-ok", attribute_names, attribute_values);
transfer = find_attribute ("transfer", attribute_names, attribute_values);
if (type == NULL)
- MISSING_ATTRIBUTE (error, element_name, "type");
+ MISSING_ATTRIBUTE (error, element_name, "c:type");
else
{
GIrNodeParam *param;
@@ -1260,30 +1315,6 @@ start_return_type (GMarkupParseContext *context,
param->type = parse_type (type);
- switch (ctx->current_node->type)
- {
- case G_IR_NODE_FUNCTION:
- case G_IR_NODE_CALLBACK:
- {
- GIrNodeFunction *func = (GIrNodeFunction *)ctx->current_node;
- func->result = param;
- }
- break;
- case G_IR_NODE_SIGNAL:
- {
- GIrNodeSignal *signal = (GIrNodeSignal *)ctx->current_node;
- signal->result = param;
- }
- break;
- case G_IR_NODE_VFUNC:
- {
- GIrNodeVFunc *vfunc = (GIrNodeVFunc *)ctx->current_node;
- vfunc->result = param;
- }
- break;
- default:
- g_assert_not_reached ();
- }
}
return TRUE;
@@ -1823,6 +1854,13 @@ start_element_handler (GMarkupParseContext *context,
goto out;
break;
+ case 't':
+ if (start_type (context, element_name,
+ attribute_names, attribute_values,
+ ctx, error))
+ goto out;
+ break;
+
case 'v':
if (start_vfunc (context, element_name,
attribute_names, attribute_values,
@@ -1921,7 +1959,7 @@ end_element_handler (GMarkupParseContext *context,
break;
case STATE_ENUM:
- if (strcmp (element_name, "enum") == 0 ||
+ if (strcmp (element_name, "enumeration") == 0 ||
strcmp (element_name, "flags") == 0)
{
ctx->current_node = NULL;
diff --git a/tools/girwriter.c b/tools/girwriter.c
index c99d1deb..d4d55063 100644
--- a/tools/girwriter.c
+++ b/tools/girwriter.c
@@ -124,7 +124,7 @@ function_generate (GIdlWriter * writer, GIdlNodeFunction * node)
GString *markup_s;
gchar *markup;
- if (node->node.type == G_IDL_NODE_CALLBACK)
+ if (node->node.type == G_IR_NODE_CALLBACK)
tag_name = "callback";
else if (node->is_constructor)
tag_name = "constructor";
@@ -138,7 +138,7 @@ function_generate (GIdlWriter * writer, GIdlNodeFunction * node)
"%s name=\"%s\"",
tag_name, node->node.name);
- if (node->node.type != G_IDL_NODE_CALLBACK)
+ if (node->node.type != G_IR_NODE_CALLBACK)
g_string_append_printf (markup_s,
g_markup_printf_escaped (" symbol=\"%s\"", node->symbol));
@@ -280,7 +280,7 @@ interface_generate (GIdlWriter * writer, GIdlNodeInterface * node)
{
GList *l;
char *markup;
- if (node->node.type == G_IDL_NODE_OBJECT)
+ if (node->node.type == G_IR_NODE_OBJECT)
{
markup =
g_markup_printf_escaped ("<object name=\"%s\" "
@@ -292,7 +292,7 @@ interface_generate (GIdlWriter * writer, GIdlNodeInterface * node)
node->gtype_name,
node->gtype_init);
}
- else if (node->node.type == G_IDL_NODE_INTERFACE)
+ else if (node->node.type == G_IR_NODE_INTERFACE)
{
markup =
g_markup_printf_escaped
@@ -302,7 +302,7 @@ interface_generate (GIdlWriter * writer, GIdlNodeInterface * node)
g_writer_write_indent (writer, markup);
g_free (markup);
- if (node->node.type == G_IDL_NODE_OBJECT && node->interfaces != NULL)
+ if (node->node.type == G_IR_NODE_OBJECT && node->interfaces != NULL)
{
GList *l;
g_writer_write_indent (writer, "<implements>\n");
@@ -316,7 +316,7 @@ interface_generate (GIdlWriter * writer, GIdlNodeInterface * node)
}
g_writer_write_unindent (writer, "</implements>\n");
}
- else if (node->node.type == G_IDL_NODE_INTERFACE
+ else if (node->node.type == G_IR_NODE_INTERFACE
&& node->prerequisites != NULL)
{
GList *l;
@@ -337,11 +337,11 @@ interface_generate (GIdlWriter * writer, GIdlNodeInterface * node)
node_generate (writer, l->data);
}
- if (node->node.type == G_IDL_NODE_OBJECT)
+ if (node->node.type == G_IR_NODE_OBJECT)
{
g_writer_write_unindent (writer, "</object>\n");
}
- else if (node->node.type == G_IDL_NODE_INTERFACE)
+ else if (node->node.type == G_IR_NODE_INTERFACE)
{
g_writer_write_unindent (writer, "</interface>\n");
}
@@ -402,11 +402,11 @@ enum_generate (GIdlWriter * writer, GIdlNodeEnum * node)
char *markup;
const char *tag_name = NULL;
- if (node->node.type == G_IDL_NODE_ENUM)
+ if (node->node.type == G_IR_NODE_ENUM)
{
tag_name = "enum";
}
- else if (node->node.type == G_IDL_NODE_FLAGS)
+ else if (node->node.type == G_IR_NODE_FLAGS)
{
tag_name = "flags";
}
@@ -447,43 +447,43 @@ node_generate (GIdlWriter * writer, GIdlNode * node)
{
switch (node->type)
{
- case G_IDL_NODE_FUNCTION:
- case G_IDL_NODE_CALLBACK:
+ case G_IR_NODE_FUNCTION:
+ case G_IR_NODE_CALLBACK:
function_generate (writer, (GIdlNodeFunction *) node);
break;
- case G_IDL_NODE_VFUNC:
+ case G_IR_NODE_VFUNC:
vfunc_generate (writer, (GIdlNodeVFunc *) node);
break;
- case G_IDL_NODE_OBJECT:
- case G_IDL_NODE_INTERFACE:
+ case G_IR_NODE_OBJECT:
+ case G_IR_NODE_INTERFACE:
interface_generate (writer, (GIdlNodeInterface *) node);
break;
- case G_IDL_NODE_STRUCT:
+ case G_IR_NODE_STRUCT:
struct_generate (writer, (GIdlNodeStruct *) node);
break;
- case G_IDL_NODE_UNION:
+ case G_IR_NODE_UNION:
union_generate (writer, (GIdlNodeUnion *) node);
break;
- case G_IDL_NODE_BOXED:
+ case G_IR_NODE_BOXED:
boxed_generate (writer, (GIdlNodeBoxed *) node);
break;
- case G_IDL_NODE_ENUM:
- case G_IDL_NODE_FLAGS:
+ case G_IR_NODE_ENUM:
+ case G_IR_NODE_FLAGS:
enum_generate (writer, (GIdlNodeEnum *) node);
break;
- case G_IDL_NODE_PROPERTY:
+ case G_IR_NODE_PROPERTY:
property_generate (writer, (GIdlNodeProperty *) node);
break;
- case G_IDL_NODE_FIELD:
+ case G_IR_NODE_FIELD:
field_generate (writer, (GIdlNodeField *) node);
break;
- case G_IDL_NODE_SIGNAL:
+ case G_IR_NODE_SIGNAL:
signal_generate (writer, (GIdlNodeSignal *) node);
break;
- case G_IDL_NODE_VALUE:
+ case G_IR_NODE_VALUE:
value_generate (writer, (GIdlNodeValue *) node);
break;
- case G_IDL_NODE_CONSTANT:
+ case G_IR_NODE_CONSTANT:
constant_generate (writer, (GIdlNodeConstant *) node);
break;
default:
@@ -520,9 +520,12 @@ g_idl_writer_save_file (GIdlModule *module,
writer->output = fopen (filename, "w");
g_writer_write (writer, "<?xml version=\"1.0\"?>\n");
- g_writer_write_indent (writer, "<api version=\"1.0\">\n");
+ g_writer_write_indent (writer, "<repository version=\"1.0\""
+ "xmlns=\"http://www.gtk.org/introspection/core/1.0\""
+ "xmlns:c=\"http://www.gtk.org/introspection/c/1.0\""
+ "xmlns:glib=\"http://www.gtk.org/introspection/glib/1.0\">");
g_writer_write_module (writer, module);
- g_writer_write_unindent (writer, "</api>\n");
+ g_writer_write_unindent (writer, "</repository>\n");
if (filename)
fclose (writer->output);
diff --git a/tools/scanner.c b/tools/scanner.c
index 6b064b86..df5e3336 100644
--- a/tools/scanner.c
+++ b/tools/scanner.c
@@ -32,13 +32,12 @@
#include <gmodule.h>
#include "sourcescanner.h"
#include "scanner.h"
-#include "gidlparser.h"
-#include "gidlmodule.h"
-#include "gidlnode.h"
-#include "gidlwriter.h"
+#include "girparser.h"
+#include "girmodule.h"
+#include "girnode.h"
+#include "girwriter.h"
#include "grealpath.h"
-
typedef GType (*TypeFunction) (void);
static void g_igenerator_parse_macros (GIGenerator * igenerator);
@@ -82,13 +81,13 @@ g_igenerator_free (GIGenerator *generator)
g_free (generator);
}
-static GIdlNodeType *
+static GIrNodeType *
create_node_from_gtype (GType type_id)
{
- GIdlNodeType *node;
+ GIrNodeType *node;
GType fundamental;
- node = (GIdlNodeType *) g_idl_node_new (G_IDL_NODE_TYPE);
+ node = (GIrNodeType *) g_idl_node_new (G_IR_NODE_TYPE);
fundamental = g_type_fundamental (type_id);
switch (fundamental)
@@ -115,12 +114,12 @@ create_node_from_gtype (GType type_id)
return node;
}
-static GIdlNodeType *
+static GIrNodeType *
create_node_from_ctype (GISourceType * ctype)
{
- GIdlNodeType *node;
+ GIrNodeType *node;
- node = (GIdlNodeType *) g_idl_node_new (G_IDL_NODE_TYPE);
+ node = (GIrNodeType *) g_idl_node_new (G_IR_NODE_TYPE);
switch (ctype->type)
{
@@ -160,13 +159,13 @@ create_node_from_ctype (GISourceType * ctype)
node->unparsed = g_strdup ("GCallback");
else
{
- GIdlNodeType *gibasetype = create_node_from_ctype (ctype->base_type);
+ GIrNodeType *gibasetype = create_node_from_ctype (ctype->base_type);
node->unparsed = g_strdup_printf ("%s*", gibasetype->unparsed);
}
break;
case CTYPE_ARRAY:
{
- GIdlNodeType *gibasetype = create_node_from_ctype (ctype->base_type);
+ GIrNodeType *gibasetype = create_node_from_ctype (ctype->base_type);
node->unparsed = g_strdup_printf ("%s[]", gibasetype->unparsed);
break;
}
@@ -189,18 +188,18 @@ str_replace (const char *str, const char *needle, const char *replacement)
static void
g_igenerator_process_properties (GIGenerator * igenerator,
- GIdlNodeInterface * node, GType type_id)
+ GIrNodeInterface * node, GType type_id)
{
int i;
guint n_properties;
GParamSpec **properties;
- if (node->node.type == G_IDL_NODE_OBJECT)
+ if (node->node.type == G_IR_NODE_OBJECT)
{
GObjectClass *type_class = g_type_class_ref (type_id);
properties = g_object_class_list_properties (type_class, &n_properties);
}
- else if (node->node.type == G_IDL_NODE_INTERFACE)
+ else if (node->node.type == G_IR_NODE_INTERFACE)
{
GTypeInterface *iface = g_type_default_interface_ref (type_id);
properties = g_object_interface_list_properties (iface, &n_properties);
@@ -212,14 +211,14 @@ g_igenerator_process_properties (GIGenerator * igenerator,
for (i = 0; i < n_properties; i++)
{
- GIdlNodeProperty *giprop;
+ GIrNodeProperty *giprop;
/* ignore inherited properties */
if (properties[i]->owner_type != type_id)
{
continue;
}
- giprop = (GIdlNodeProperty *) g_idl_node_new (G_IDL_NODE_PROPERTY);
+ giprop = (GIrNodeProperty *) g_idl_node_new (G_IR_NODE_PROPERTY);
giprop->node.name = g_strdup (properties[i]->name);
node->members =
g_list_insert_sorted (node->members, giprop,
@@ -235,7 +234,7 @@ g_igenerator_process_properties (GIGenerator * igenerator,
static void
g_igenerator_process_signals (GIGenerator * igenerator,
- GIdlNodeInterface * node, GType type_id)
+ GIrNodeInterface * node, GType type_id)
{
int i, j;
guint n_signal_ids;
@@ -244,11 +243,11 @@ g_igenerator_process_signals (GIGenerator * igenerator,
for (i = 0; i < n_signal_ids; i++)
{
GSignalQuery signal_query;
- GIdlNodeSignal *gisig;
- GIdlNodeParam *giparam;
+ GIrNodeSignal *gisig;
+ GIrNodeParam *giparam;
g_signal_query (signal_ids[i], &signal_query);
- gisig = (GIdlNodeSignal *) g_idl_node_new (G_IDL_NODE_SIGNAL);
+ gisig = (GIrNodeSignal *) g_idl_node_new (G_IR_NODE_SIGNAL);
gisig->node.name = g_strdup (signal_query.signal_name);
node->members =
g_list_insert_sorted (node->members, gisig,
@@ -261,19 +260,19 @@ g_igenerator_process_signals (GIGenerator * igenerator,
(signal_query.signal_flags & G_SIGNAL_RUN_CLEANUP) != 0;
/* add sender parameter */
- giparam = (GIdlNodeParam *) g_idl_node_new (G_IDL_NODE_PARAM);
+ giparam = (GIrNodeParam *) g_idl_node_new (G_IR_NODE_PARAM);
gisig->parameters = g_list_append (gisig->parameters, giparam);
giparam->node.name = g_strdup ("object");
giparam->type = create_node_from_gtype (type_id);
for (j = 0; j < signal_query.n_params; j++)
{
- giparam = (GIdlNodeParam *) g_idl_node_new (G_IDL_NODE_PARAM);
+ giparam = (GIrNodeParam *) g_idl_node_new (G_IR_NODE_PARAM);
gisig->parameters = g_list_append (gisig->parameters, giparam);
giparam->node.name = g_strdup_printf ("p%d", j);
giparam->type = create_node_from_gtype (signal_query.param_types[j]);
}
- gisig->result = (GIdlNodeParam *) g_idl_node_new (G_IDL_NODE_PARAM);
+ gisig->result = (GIrNodeParam *) g_idl_node_new (G_IR_NODE_PARAM);
gisig->result->type = create_node_from_gtype (signal_query.return_type);
}
}
@@ -301,12 +300,12 @@ g_igenerator_create_object (GIGenerator *igenerator,
{
char *alt_lower_case_prefix;
- GIdlNodeInterface *node;
+ GIrNodeInterface *node;
guint n_type_interfaces;
GType *type_interfaces;
int i;
- node = (GIdlNodeInterface *) g_idl_node_new (G_IDL_NODE_OBJECT);
+ node = (GIrNodeInterface *) g_idl_node_new (G_IR_NODE_OBJECT);
node->node.name = g_strdup (g_type_name (type_id));
igenerator->module->entries =
g_list_insert_sorted (igenerator->module->entries, node,
@@ -366,13 +365,13 @@ g_igenerator_create_interface (GIGenerator *igenerator,
char *lower_case_prefix)
{
- GIdlNodeInterface *node;
+ GIrNodeInterface *node;
gboolean is_gobject = FALSE;
guint n_iface_prereqs;
GType *iface_prereqs;
int i;
- node = (GIdlNodeInterface *) g_idl_node_new (G_IDL_NODE_INTERFACE);
+ node = (GIrNodeInterface *) g_idl_node_new (G_IR_NODE_INTERFACE);
node->node.name = g_strdup (g_type_name (type_id));
/* workaround for AtkImplementorIface */
@@ -419,8 +418,8 @@ g_igenerator_create_boxed (GIGenerator *igenerator,
GType type_id,
char *lower_case_prefix)
{
- GIdlNodeBoxed *node =
- (GIdlNodeBoxed *) g_idl_node_new (G_IDL_NODE_BOXED);
+ GIrNodeBoxed *node =
+ (GIrNodeBoxed *) g_idl_node_new (G_IR_NODE_BOXED);
node->node.name = g_strdup (g_type_name (type_id));
igenerator->module->entries =
g_list_insert_sorted (igenerator->module->entries, node,
@@ -439,11 +438,11 @@ g_igenerator_create_enum (GIGenerator *igenerator,
GType type_id,
char *lower_case_prefix)
{
- GIdlNodeEnum *node;
+ GIrNodeEnum *node;
int i;
GEnumClass *type_class;
- node = (GIdlNodeEnum *) g_idl_node_new (G_IDL_NODE_ENUM);
+ node = (GIrNodeEnum *) g_idl_node_new (G_IR_NODE_ENUM);
node->node.name = g_strdup (g_type_name (type_id));
igenerator->module->entries =
g_list_insert_sorted (igenerator->module->entries, node,
@@ -459,8 +458,8 @@ g_igenerator_create_enum (GIGenerator *igenerator,
for (i = 0; i < type_class->n_values; i++)
{
- GIdlNodeValue *gival =
- (GIdlNodeValue *) g_idl_node_new (G_IDL_NODE_VALUE);
+ GIrNodeValue *gival =
+ (GIrNodeValue *) g_idl_node_new (G_IR_NODE_VALUE);
node->values = g_list_append (node->values, gival);
gival->node.name =
g_strdup (type_class->values[i].value_name);
@@ -474,11 +473,11 @@ g_igenerator_create_flags (GIGenerator *igenerator,
GType type_id,
char *lower_case_prefix)
{
- GIdlNodeEnum *node;
+ GIrNodeEnum *node;
GFlagsClass *type_class;
int i;
- node = (GIdlNodeEnum *) g_idl_node_new (G_IDL_NODE_FLAGS);
+ node = (GIrNodeEnum *) g_idl_node_new (G_IR_NODE_FLAGS);
node->node.name = g_strdup (g_type_name (type_id));
igenerator->module->entries =
g_list_insert_sorted (igenerator->module->entries, node,
@@ -494,8 +493,8 @@ g_igenerator_create_flags (GIGenerator *igenerator,
for (i = 0; i < type_class->n_values; i++)
{
- GIdlNodeValue *gival =
- (GIdlNodeValue *) g_idl_node_new (G_IDL_NODE_VALUE);
+ GIrNodeValue *gival =
+ (GIrNodeValue *) g_idl_node_new (G_IR_NODE_VALUE);
node->values = g_list_append (node->values, gival);
gival->node.name =
g_strdup (type_class->values[i].value_name);
@@ -595,14 +594,14 @@ g_igenerator_process_module (GIGenerator * igenerator,
static void
g_igenerator_process_function_symbol (GIGenerator * igenerator, GISourceSymbol * sym)
{
- GIdlNodeFunction *func;
+ GIrNodeFunction *func;
char *last_underscore;
GList *param_l;
int i;
GList *l;
GSList *j, *directives;
- func = (GIdlNodeFunction *) g_idl_node_new (G_IDL_NODE_FUNCTION);
+ func = (GIrNodeFunction *) g_idl_node_new (G_IR_NODE_FUNCTION);
/* check whether this is a type method */
last_underscore = strrchr (sym->ident, '_');
@@ -610,7 +609,7 @@ g_igenerator_process_function_symbol (GIGenerator * igenerator, GISourceSymbol *
while (last_underscore != NULL)
{
char *prefix;
- GIdlNode *node;
+ GIrNode *node;
prefix = g_strndup (sym->ident, last_underscore - sym->ident);
prefix = str_replace (prefix, "_", "");
@@ -625,8 +624,8 @@ g_igenerator_process_function_symbol (GIGenerator * igenerator, GISourceSymbol *
if (strcmp (func->node.name, "get_type") == 0)
return;
- if ((node->type == G_IDL_NODE_OBJECT ||
- node->type == G_IDL_NODE_BOXED) &&
+ if ((node->type == G_IR_NODE_OBJECT ||
+ node->type == G_IR_NODE_BOXED) &&
g_str_has_prefix (func->node.name, "new"))
func->is_constructor = TRUE;
else
@@ -669,7 +668,7 @@ g_igenerator_process_function_symbol (GIGenerator * igenerator, GISourceSymbol *
}
func->symbol = g_strdup (sym->ident);
- func->result = (GIdlNodeParam *) g_idl_node_new (G_IDL_NODE_PARAM);
+ func->result = (GIrNodeParam *) g_idl_node_new (G_IR_NODE_PARAM);
func->result->type = create_node_from_ctype (sym->base_type->base_type);
directives = g_hash_table_lookup (igenerator->scanner->directives_map, func->symbol);
@@ -693,9 +692,9 @@ g_igenerator_process_function_symbol (GIGenerator * igenerator, GISourceSymbol *
param_l = param_l->next, i++)
{
GISourceSymbol *param_sym = param_l->data;
- GIdlNodeParam *param;
+ GIrNodeParam *param;
- param = (GIdlNodeParam *) g_idl_node_new (G_IDL_NODE_PARAM);
+ param = (GIrNodeParam *) g_idl_node_new (G_IR_NODE_PARAM);
param->type = create_node_from_ctype (param_sym->base_type);
for (j = directives; j; j = j->next)
@@ -750,8 +749,8 @@ g_igenerator_process_unregistered_struct_typedef (GIGenerator * igenerator,
GISourceSymbol * sym,
GISourceType * struct_type)
{
- GIdlNodeStruct *node =
- (GIdlNodeStruct *) g_idl_node_new (G_IDL_NODE_STRUCT);
+ GIrNodeStruct *node =
+ (GIrNodeStruct *) g_idl_node_new (G_IR_NODE_STRUCT);
GList *member_l;
char *lower_case_prefix;
@@ -768,8 +767,8 @@ g_igenerator_process_unregistered_struct_typedef (GIGenerator * igenerator,
member_l = member_l->next)
{
GISourceSymbol *member = member_l->data;
- GIdlNodeField *gifield =
- (GIdlNodeField *) g_idl_node_new (G_IDL_NODE_FIELD);
+ GIrNodeField *gifield =
+ (GIrNodeField *) g_idl_node_new (G_IR_NODE_FIELD);
node->members = g_list_append (node->members, gifield);
gifield->node.name = g_strdup (member->ident);
@@ -782,7 +781,7 @@ g_igenerator_process_struct_typedef (GIGenerator * igenerator, GISourceSymbol *
{
GISourceType *struct_type = sym->base_type;
gboolean opaque_type = FALSE;
- GIdlNode *type;
+ GIrNode *type;
if (struct_type->child_list == NULL)
{
@@ -807,10 +806,10 @@ g_igenerator_process_struct_typedef (GIGenerator * igenerator, GISourceSymbol *
{
/* struct of a GTypeInstance */
if (!opaque_type
- && (type->type == G_IDL_NODE_OBJECT
- || type->type == G_IDL_NODE_INTERFACE))
+ && (type->type == G_IR_NODE_OBJECT
+ || type->type == G_IR_NODE_INTERFACE))
{
- GIdlNodeInterface *node = (GIdlNodeInterface *) type;
+ GIrNodeInterface *node = (GIrNodeInterface *) type;
GList *member_l;
/* ignore first field => parent */
for (member_l = struct_type->child_list->next; member_l != NULL;
@@ -823,23 +822,23 @@ g_igenerator_process_struct_typedef (GIGenerator * igenerator, GISourceSymbol *
{
continue;
}
- GIdlNodeField *gifield =
- (GIdlNodeField *) g_idl_node_new (G_IDL_NODE_FIELD);
+ GIrNodeField *gifield =
+ (GIrNodeField *) g_idl_node_new (G_IR_NODE_FIELD);
node->members = g_list_append (node->members, gifield);
gifield->node.name = g_strdup (member->ident);
gifield->type = create_node_from_ctype (member->base_type);
}
}
- else if (type->type == G_IDL_NODE_BOXED)
+ else if (type->type == G_IR_NODE_BOXED)
{
- GIdlNodeBoxed *node = (GIdlNodeBoxed *) type;
+ GIrNodeBoxed *node = (GIrNodeBoxed *) type;
GList *member_l;
for (member_l = struct_type->child_list; member_l != NULL;
member_l = member_l->next)
{
GISourceSymbol *member = member_l->data;
- GIdlNodeField *gifield =
- (GIdlNodeField *) g_idl_node_new (G_IDL_NODE_FIELD);
+ GIrNodeField *gifield =
+ (GIrNodeField *) g_idl_node_new (G_IR_NODE_FIELD);
node->members = g_list_append (node->members, gifield);
gifield->node.name = g_strdup (member->ident);
gifield->type = create_node_from_ctype (member->base_type);
@@ -853,7 +852,7 @@ g_igenerator_process_struct_typedef (GIGenerator * igenerator, GISourceSymbol *
{
char *base_name;
GList *member_l;
- GIdlNodeInterface *node;
+ GIrNodeInterface *node;
if (g_str_has_suffix (sym->ident, "Interface"))
{
@@ -868,14 +867,14 @@ g_igenerator_process_struct_typedef (GIGenerator * igenerator, GISourceSymbol *
}
type = g_hash_table_lookup (igenerator->type_map, base_name);
if (type == NULL
- || (type->type != G_IDL_NODE_OBJECT
- && type->type != G_IDL_NODE_INTERFACE))
+ || (type->type != G_IR_NODE_OBJECT
+ && type->type != G_IR_NODE_INTERFACE))
{
g_igenerator_process_unregistered_struct_typedef (igenerator, sym,
struct_type);
return;
}
- node = (GIdlNodeInterface *) type;
+ node = (GIrNodeInterface *) type;
/* ignore first field => parent */
for (member_l = struct_type->child_list->next; member_l != NULL;
@@ -895,20 +894,20 @@ g_igenerator_process_struct_typedef (GIGenerator * igenerator, GISourceSymbol *
GList *type_member_l;
GList *param_l;
int i;
- GIdlNodeVFunc *givfunc;
+ GIrNodeVFunc *givfunc;
for (type_member_l = node->members; type_member_l != NULL;
type_member_l = type_member_l->next)
{
- GIdlNode *type_member = type_member_l->data;
+ GIrNode *type_member = type_member_l->data;
char *normalized_name =
str_replace (type_member->name, "-", "_");
- if (type_member->type == G_IDL_NODE_SIGNAL
+ if (type_member->type == G_IR_NODE_SIGNAL
&& strcmp (normalized_name, member->ident) == 0)
{
GList *vfunc_param_l;
GList *sig_param_l;
- GIdlNodeSignal *sig = (GIdlNodeSignal *) type_member;
+ GIrNodeSignal *sig = (GIrNodeSignal *) type_member;
found_signal = TRUE;
/* set signal parameter names */
for (vfunc_param_l =
@@ -919,7 +918,7 @@ g_igenerator_process_struct_typedef (GIGenerator * igenerator, GISourceSymbol *
sig_param_l->next)
{
GISourceSymbol *vfunc_param = vfunc_param_l->data;
- GIdlNodeParam *sig_param = sig_param_l->data;
+ GIrNodeParam *sig_param = sig_param_l->data;
if (vfunc_param->ident != NULL)
{
g_free (sig_param->node.name);
@@ -935,21 +934,21 @@ g_igenerator_process_struct_typedef (GIGenerator * igenerator, GISourceSymbol *
continue;
}
- givfunc = (GIdlNodeVFunc *) g_idl_node_new (G_IDL_NODE_VFUNC);
+ givfunc = (GIrNodeVFunc *) g_idl_node_new (G_IR_NODE_VFUNC);
givfunc->node.name = g_strdup (member->ident);
node->members =
g_list_insert_sorted (node->members, givfunc,
(GCompareFunc) g_idl_node_cmp);
givfunc->result =
- (GIdlNodeParam *) g_idl_node_new (G_IDL_NODE_PARAM);
+ (GIrNodeParam *) g_idl_node_new (G_IR_NODE_PARAM);
givfunc->result->type =
create_node_from_ctype (member->base_type->base_type->base_type);
for (param_l = member->base_type->base_type->child_list, i = 1;
param_l != NULL; param_l = param_l->next, i++)
{
GISourceSymbol *param_sym = param_l->data;
- GIdlNodeParam *param =
- (GIdlNodeParam *) g_idl_node_new (G_IDL_NODE_PARAM);
+ GIrNodeParam *param =
+ (GIrNodeParam *) g_idl_node_new (G_IR_NODE_PARAM);
if (param_sym->ident == NULL)
{
param->node.name = g_strdup_printf ("p%d", i);
@@ -981,7 +980,7 @@ g_igenerator_process_union_typedef (GIGenerator * igenerator, GISourceSymbol * s
{
GISourceType *union_type = sym->base_type;
gboolean opaque_type = FALSE;
- GIdlNode *type;
+ GIrNode *type;
if (union_type->child_list == NULL)
{
@@ -1002,15 +1001,15 @@ g_igenerator_process_union_typedef (GIGenerator * igenerator, GISourceSymbol * s
type = g_hash_table_lookup (igenerator->type_map, sym->ident);
if (type != NULL)
{
- g_assert (type->type == G_IDL_NODE_BOXED);
- GIdlNodeBoxed *node = (GIdlNodeBoxed *) type;
+ g_assert (type->type == G_IR_NODE_BOXED);
+ GIrNodeBoxed *node = (GIrNodeBoxed *) type;
GList *member_l;
for (member_l = union_type->child_list; member_l != NULL;
member_l = member_l->next)
{
GISourceSymbol *member = member_l->data;
- GIdlNodeField *gifield =
- (GIdlNodeField *) g_idl_node_new (G_IDL_NODE_FIELD);
+ GIrNodeField *gifield =
+ (GIrNodeField *) g_idl_node_new (G_IR_NODE_FIELD);
node->members = g_list_append (node->members, gifield);
gifield->node.name = g_strdup (member->ident);
gifield->type = create_node_from_ctype (member->base_type);
@@ -1018,8 +1017,8 @@ g_igenerator_process_union_typedef (GIGenerator * igenerator, GISourceSymbol * s
}
else
{
- GIdlNodeUnion *node =
- (GIdlNodeUnion *) g_idl_node_new (G_IDL_NODE_UNION);
+ GIrNodeUnion *node =
+ (GIrNodeUnion *) g_idl_node_new (G_IR_NODE_UNION);
char *lower_case_prefix;
GList *member_l;
@@ -1037,8 +1036,8 @@ g_igenerator_process_union_typedef (GIGenerator * igenerator, GISourceSymbol * s
member_l = member_l->next)
{
GISourceSymbol *member = member_l->data;
- GIdlNodeField *gifield =
- (GIdlNodeField *) g_idl_node_new (G_IDL_NODE_FIELD);
+ GIrNodeField *gifield =
+ (GIrNodeField *) g_idl_node_new (G_IR_NODE_FIELD);
node->members = g_list_append (node->members, gifield);
gifield->node.name = g_strdup (member->ident);
gifield->type = create_node_from_ctype (member->base_type);
@@ -1051,7 +1050,7 @@ g_igenerator_process_enum_typedef (GIGenerator * igenerator, GISourceSymbol * sy
{
GISourceType *enum_type;
GList *member_l;
- GIdlNodeEnum *node;
+ GIrNodeEnum *node;
GISourceSymbol *enum_symbol;
enum_type = sym->base_type;
@@ -1078,7 +1077,7 @@ g_igenerator_process_enum_typedef (GIGenerator * igenerator, GISourceSymbol * sy
return;
}
- node = (GIdlNodeEnum *) g_idl_node_new (G_IDL_NODE_ENUM);
+ node = (GIrNodeEnum *) g_idl_node_new (G_IR_NODE_ENUM);
node->node.name = g_strdup (sym->ident);
igenerator->module->entries =
g_list_insert_sorted (igenerator->module->entries, node,
@@ -1088,8 +1087,8 @@ g_igenerator_process_enum_typedef (GIGenerator * igenerator, GISourceSymbol * sy
member_l = member_l->next)
{
GISourceSymbol *member = member_l->data;
- GIdlNodeValue *gival =
- (GIdlNodeValue *) g_idl_node_new (G_IDL_NODE_VALUE);
+ GIrNodeValue *gival =
+ (GIrNodeValue *) g_idl_node_new (G_IR_NODE_VALUE);
node->values = g_list_append (node->values, gival);
gival->node.name = g_strdup (member->ident);
gival->value = member->const_int;
@@ -1104,8 +1103,8 @@ g_igenerator_process_function_typedef (GIGenerator * igenerator,
int i;
/* handle callback types */
- GIdlNodeFunction *gifunc =
- (GIdlNodeFunction *) g_idl_node_new (G_IDL_NODE_CALLBACK);
+ GIrNodeFunction *gifunc =
+ (GIrNodeFunction *) g_idl_node_new (G_IR_NODE_CALLBACK);
gifunc->node.name = g_strdup (sym->ident);
igenerator->module->entries =
@@ -1113,7 +1112,7 @@ g_igenerator_process_function_typedef (GIGenerator * igenerator,
(GCompareFunc) g_idl_node_cmp);
gifunc->symbol = g_strdup (sym->ident);
- gifunc->result = (GIdlNodeParam *) g_idl_node_new (G_IDL_NODE_PARAM);
+ gifunc->result = (GIrNodeParam *) g_idl_node_new (G_IR_NODE_PARAM);
gifunc->result->type =
create_node_from_ctype (sym->base_type->base_type->base_type);
@@ -1121,8 +1120,8 @@ g_igenerator_process_function_typedef (GIGenerator * igenerator,
param_l != NULL; param_l = param_l->next, i++)
{
GISourceSymbol *param_sym = param_l->data;
- GIdlNodeParam *param =
- (GIdlNodeParam *) g_idl_node_new (G_IDL_NODE_PARAM);
+ GIrNodeParam *param =
+ (GIrNodeParam *) g_idl_node_new (G_IR_NODE_PARAM);
if (param_sym->ident == NULL)
{
param->node.name = g_strdup_printf ("p%d", i);
@@ -1139,14 +1138,14 @@ g_igenerator_process_function_typedef (GIGenerator * igenerator,
static void
g_igenerator_process_constant (GIGenerator * igenerator, GISourceSymbol * sym)
{
- GIdlNodeConstant *giconst =
- (GIdlNodeConstant *) g_idl_node_new (G_IDL_NODE_CONSTANT);
+ GIrNodeConstant *giconst =
+ (GIrNodeConstant *) g_idl_node_new (G_IR_NODE_CONSTANT);
giconst->node.name = g_strdup (sym->ident);
igenerator->module->entries =
g_list_insert_sorted (igenerator->module->entries, giconst,
(GCompareFunc) g_idl_node_cmp);
- giconst->type = (GIdlNodeType *) g_idl_node_new (G_IDL_NODE_TYPE);
+ giconst->type = (GIrNodeType *) g_idl_node_new (G_IR_NODE_TYPE);
if (sym->const_int_set)
{
giconst->type->unparsed = g_strdup ("int");
@@ -1194,8 +1193,8 @@ g_igenerator_process_symbols (GIGenerator * igenerator)
}
else
{
- GIdlNodeStruct *node =
- (GIdlNodeStruct *) g_idl_node_new (G_IDL_NODE_STRUCT);
+ GIrNodeStruct *node =
+ (GIrNodeStruct *) g_idl_node_new (G_IR_NODE_STRUCT);
char *lower_case_prefix;
node->node.name = g_strdup (sym->ident);
@@ -1449,17 +1448,17 @@ g_igenerator_parse_macros (GIGenerator * igenerator)
static void
g_igenerator_add_module (GIGenerator *igenerator,
- GIdlModule *module)
+ GIrModule *module)
{
GList *l;
for (l = module->entries; l; l = l->next)
{
- GIdlNode *node = (GIdlNode*)l->data;
+ GIrNode *node = (GIrNode*)l->data;
- if (node->type == G_IDL_NODE_OBJECT)
+ if (node->type == G_IR_NODE_OBJECT)
{
- GIdlNodeInterface *object = (GIdlNodeInterface*)node;
+ GIrNodeInterface *object = (GIrNodeInterface*)node;
gchar *name;
if (strcmp(module->name, igenerator->namespace) == 0)
name = g_strdup (node->name);
@@ -1491,7 +1490,7 @@ g_igenerator_add_include_idl (GIGenerator *igenerator,
for (l = modules; l; l = l->next)
{
- GIdlModule *module = (GIdlModule*)l->data;
+ GIrModule *module = (GIrModule*)l->data;
g_igenerator_add_module (igenerator, module);
}
}