diff options
author | Johan Dahlin <jdahlin@async.com.br> | 2008-04-28 19:24:11 +0000 |
---|---|---|
committer | Johan Dahlin <johan@src.gnome.org> | 2008-04-28 19:24:11 +0000 |
commit | 25e6c67eeaa48e1037ec398b2387603164152aab (patch) | |
tree | 42acf91aa4349d3e937bc55b541f5c50fa6d70a8 | |
parent | 552ee78574aa9d6d7027069165eaf2a945913a85 (diff) | |
download | gobject-introspection-25e6c67eeaa48e1037ec398b2387603164152aab.tar.gz |
Move c:identifier from return-value to subchild type, as per Jürgs
2008-04-28 Johan Dahlin <jdahlin@async.com.br>
* giscanner/ast.py:
* giscanner/girwriter.py:
* giscanner/glibtransformer.py:
* tests/parser/Foo-expected.gidl:
* tests/parser/Makefile.am:
Move c:identifier from return-value to subchild type,
as per Jürgs suggestion
svn path=/trunk/; revision=250
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | giscanner/ast.py | 2 | ||||
-rw-r--r-- | giscanner/girwriter.py | 7 | ||||
-rw-r--r-- | giscanner/glibtransformer.py | 4 | ||||
-rw-r--r-- | tests/parser/Foo-expected.gir | 124 | ||||
-rw-r--r-- | tests/parser/Makefile.am | 2 |
6 files changed, 80 insertions, 69 deletions
@@ -1,3 +1,13 @@ +2008-04-28 Johan Dahlin <jdahlin@async.com.br> + + * giscanner/ast.py: + * giscanner/girwriter.py: + * giscanner/glibtransformer.py: + * tests/parser/Foo-expected.gidl: + * tests/parser/Makefile.am: + Move c:identifier from return-value to subchild type, + as per Jürgs suggestion + 2008-04-28 Johan Dahlin <johan@gnome.org> * giscanner/girwriter.py: diff --git a/giscanner/ast.py b/giscanner/ast.py index 1d2e5185..38f03130 100644 --- a/giscanner/ast.py +++ b/giscanner/ast.py @@ -44,6 +44,7 @@ class VFunction(Function): class Type(Node): def __init__(self, name): Node.__init__(self, name) + self.cidentifier = name def __repr__(self): return 'Type(%r)' % (self.name,) @@ -92,7 +93,6 @@ class Return(Node): Node.__init__(self) self.type = Type(type_name) self.transfer = 'none' - self.ctype = self.type def __repr__(self): return 'Return(%r)' % (self.type,) diff --git a/giscanner/girwriter.py b/giscanner/girwriter.py index 1b0e49b3..79367c8f 100644 --- a/giscanner/girwriter.py +++ b/giscanner/girwriter.py @@ -76,8 +76,7 @@ class GIRWriter(XMLWriter): def _write_return_type(self, return_): if not return_: return - attrs = [('c:identifer', return_.type.name)] - with self.tagcontext('return-value', attrs): + with self.tagcontext('return-value'): if isinstance(return_.type, Sequence): self._write_sequence(return_.type) else: @@ -100,7 +99,9 @@ class GIRWriter(XMLWriter): self._write_type(parameter.type) def _write_type(self, type): - self.write_tag('type', [('name', type.name)]) + attrs = [('name', type.name), + ('c:identifier', type.cidentifier)] + self.write_tag('type', attrs) def _write_sequence(self, sequence): attrs = [('c:owner', sequence.cowner)] diff --git a/giscanner/glibtransformer.py b/giscanner/glibtransformer.py index 0635c58a..305899f2 100644 --- a/giscanner/glibtransformer.py +++ b/giscanner/glibtransformer.py @@ -341,8 +341,8 @@ class GLibTransformer(object): def _introspect_signals(self, node, type_id): for signal_info in cgobject.signal_list(type_id): - retval = Return(cgobject.type_name(signal_info.return_type)) - signal = GLibSignal(signal_info.signal_name, retval) + return_ = Return(cgobject.type_name(signal_info.return_type)) + signal = GLibSignal(signal_info.signal_name, return_) for i, parameter in enumerate(signal_info.get_params()): if i == 0: name = 'object' diff --git a/tests/parser/Foo-expected.gir b/tests/parser/Foo-expected.gir index aa6e4d8e..0f7f8dfe 100644 --- a/tests/parser/Foo-expected.gir +++ b/tests/parser/Foo-expected.gir @@ -8,8 +8,8 @@ glib:get-type="foo_interface_get_type"> </interface> <function name="init" c:identifier="foo_init"> - <return-value c:identifer="gint"> - <type name="gint"/> + <return-value> + <type name="gint" c:identifier="gint"/> </return-value> </function> <class name="Object" @@ -17,160 +17,160 @@ glib:type-name="FooObject" glib:get-type="foo_object_get_type"> <constructor name="new" c:identifier="foo_object_new"> - <return-value c:identifer="Object*"> - <type name="Object*"/> + <return-value> + <type name="Object*" c:identifier="FooObject*"/> </return-value> </constructor> <method name="method" c:identifier="foo_object_method"> - <return-value c:identifer="gint"> - <type name="gint"/> + <return-value> + <type name="gint" c:identifier="gint"/> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> </parameters> </method> <method name="external_type" c:identifier="foo_object_external_type"> - <return-value c:identifer="utility.Object*"> - <type name="utility.Object*"/> + <return-value> + <type name="utility.Object*" c:identifier="UtilityObject*"/> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> </parameters> </method> <method name="out" c:identifier="foo_object_out"> - <return-value c:identifer="gint"> - <type name="gint"/> + <return-value> + <type name="gint" c:identifier="gint"/> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> <parameter name="outarg" direction="out"> - <type name="int*"/> + <type name="int*" c:identifier="int*"/> </parameter> </parameters> </method> <method name="create_object" c:identifier="foo_object_create_object"> - <return-value c:identifer="GLib.Object*"> - <type name="GLib.Object*"/> + <return-value> + <type name="GLib.Object*" c:identifier="GObject*"/> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> </parameters> </method> <method name="inout" c:identifier="foo_object_inout"> - <return-value c:identifer="gint"> - <type name="gint"/> + <return-value> + <type name="gint" c:identifier="gint"/> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> <parameter name="inoutarg" direction="inout"> - <type name="int*"/> + <type name="int*" c:identifier="int*"/> </parameter> </parameters> </method> <method name="inout2" c:identifier="foo_object_inout2"> - <return-value c:identifer="gint"> - <type name="gint"/> + <return-value> + <type name="gint" c:identifier="gint"/> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> <parameter name="inoutarg"> - <type name="int*"/> + <type name="int*" c:identifier="int*"/> </parameter> </parameters> </method> <method name="inout3" c:identifier="foo_object_inout3"> - <return-value c:identifer="gint"> - <type name="gint"/> + <return-value> + <type name="gint" c:identifier="gint"/> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> <parameter name="inoutarg" direction="inout"> - <type name="int*"/> + <type name="int*" c:identifier="int*"/> </parameter> </parameters> </method> <method name="in" c:identifier="foo_object_in"> - <return-value c:identifer="gint"> - <type name="gint"/> + <return-value> + <type name="gint" c:identifier="gint"/> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> <parameter name="inarg"> - <type name="int*"/> + <type name="int*" c:identifier="int*"/> </parameter> </parameters> </method> <method name="calleeowns" c:identifier="foo_object_calleeowns"> - <return-value c:identifer="gint"> - <type name="gint"/> + <return-value> + <type name="gint" c:identifier="gint"/> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> <parameter name="toown" transfer="full"> - <type name="GLib.Object*"/> + <type name="GLib.Object*" c:identifier="GObject*"/> </parameter> </parameters> </method> <method name="calleesowns" c:identifier="foo_object_calleesowns"> - <return-value c:identifer="gint"> - <type name="gint"/> + <return-value> + <type name="gint" c:identifier="gint"/> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> <parameter name="toown1" transfer="full"> - <type name="GLib.Object*"/> + <type name="GLib.Object*" c:identifier="GObject*"/> </parameter> <parameter name="toown2" transfer="full"> - <type name="GLib.Object*"/> + <type name="GLib.Object*" c:identifier="GObject*"/> </parameter> </parameters> </method> <method name="get_strings" c:identifier="foo_object_get_strings"> - <return-value c:identifer="GList*"> + <return-value> <sequence c:owner="caller"> <element-type c:identifier="char*"/> </sequence> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> </parameters> </method> <method name="get_objects" c:identifier="foo_object_get_objects"> - <return-value c:identifer="GSList*"> + <return-value> <sequence c:owner="caller"> <element-type c:identifier="FooObject*"/> </sequence> </return-value> <parameters> <parameter name="object"> - <type name="Object*"/> + <type name="Object*" c:identifier="FooObject*"/> </parameter> </parameters> </method> <property name="string"> - <type name="gchararray"/> + <type name="gchararray" c:identifier="gchararray"/> </property> </class> <class name="Subobject" @@ -178,8 +178,8 @@ glib:type-name="FooSubobject" glib:get-type="foo_subobject_get_type"> <constructor name="new" c:identifier="foo_subobject_new"> - <return-value c:identifer="Subobject*"> - <type name="Subobject*"/> + <return-value> + <type name="Subobject*" c:identifier="FooSubobject*"/> </return-value> </constructor> </class> @@ -191,12 +191,12 @@ <member name="FOO_ENUM_DELTA" value="2" glib:nick="delta"/> </enumeration> <function name="enum_type_method" c:identifier="foo_enum_type_method"> - <return-value c:identifer="int"> - <type name="int"/> + <return-value> + <type name="int" c:identifier="int"/> </return-value> <parameters> <parameter name="foo_enum"> - <type name="EnumType"/> + <type name="EnumType" c:identifier="FooEnumType"/> </parameter> </parameters> </function> @@ -216,34 +216,34 @@ glib:type-name="FooBoxed" glib:get-type="foo_boxed_get_type"> <constructor name="new" c:identifier="foo_boxed_new"> - <return-value c:identifer="Boxed*"> - <type name="Boxed*"/> + <return-value> + <type name="Boxed*" c:identifier="FooBoxed*"/> </return-value> </constructor> <method name="method" c:identifier="foo_boxed_method"> - <return-value c:identifer="void"> - <type name="void"/> + <return-value> + <type name="void" c:identifier="void"/> </return-value> <parameters> <parameter name="boxed"> - <type name="Boxed*"/> + <type name="Boxed*" c:identifier="FooBoxed*"/> </parameter> </parameters> </method> </glib:boxed> <callback name="FooCallback"> - <return-value c:identifer="gboolean"> - <type name="gboolean"/> + <return-value> + <type name="gboolean" c:identifier="gboolean"/> </return-value> <parameters> <parameter name="foo"> - <type name="FooObject*"/> + <type name="FooObject*" c:identifier="FooObject*"/> </parameter> <parameter name="b"> - <type name="gboolean"/> + <type name="gboolean" c:identifier="gboolean"/> </parameter> <parameter name="data"> - <type name="gpointer"/> + <type name="gpointer" c:identifier="gpointer"/> </parameter> </parameters> </callback> diff --git a/tests/parser/Makefile.am b/tests/parser/Makefile.am index 30a07f89..5cced68c 100644 --- a/tests/parser/Makefile.am +++ b/tests/parser/Makefile.am @@ -31,7 +31,7 @@ utility.gir: libutility.la utility.h $(SCANNER) Foo.gir: libfoo.la foo-object.h $(SCANNER) @PYTHONPATH=$(top_builddir) $(SCANNER) -v \ --include=$(top_srcdir)/gir/gobject-2.0.gir \ - --include=$(builddir)/utility.gir \ + --include=$(top_builddir)/tests/parser/utility.gir \ --library=libfoo.la \ --namespace=Foo \ --pkg gobject-2.0 \ |