summaryrefslogtreecommitdiff
path: root/giscanner/girparser.py
diff options
context:
space:
mode:
authorJohan Bilien <jobi@via.ecp.fr>2008-10-17 09:29:34 +0000
committerJohan Bilien <jobi@src.gnome.org>2008-10-17 09:29:34 +0000
commit38dad4bdbf57895d21b20681b1f3ca71ed8f18ac (patch)
tree5bd61380c4a3fed6a356cfa639d2e41b46a33c49 /giscanner/girparser.py
parentfdb8727ee448853bd0b84ba518daee706087988c (diff)
downloadgobject-introspection-38dad4bdbf57895d21b20681b1f3ca71ed8f18ac.tar.gz
Bug 556610 – giscanner/girparser.py drops parameter options
2008-10-16 Johan Bilien <jobi@via.ecp.fr> Bug 556610 – giscanner/girparser.py drops parameter options * tests/scanner/drawable-injected-1.0-expected.gir, tests/scanner/DrawableAdditions.xml: added simple test for injection. * giscanner/ast.py: allow Parameter to take options in the constructor * giscanner/girparser.py: parse parameter options (transfer, direction, allow-none) svn path=/trunk/; revision=738
Diffstat (limited to 'giscanner/girparser.py')
-rw-r--r--giscanner/girparser.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/giscanner/girparser.py b/giscanner/girparser.py
index 5649e036..933bb97d 100644
--- a/giscanner/girparser.py
+++ b/giscanner/girparser.py
@@ -162,8 +162,12 @@ class GIRParser(object):
parameters = []
if (parameters_node is not None):
for paramnode in parameters_node.findall(_corens('parameter')):
- parameters.append(Parameter(paramnode.attrib.get('name'),
- self._parse_type(paramnode)))
+ param = Parameter(paramnode.attrib.get('name'),
+ self._parse_type(paramnode),
+ paramnode.attrib.get('direction'),
+ paramnode.attrib.get('transfer'),
+ paramnode.attrib.get('allow-none') == '1')
+ parameters.append(param)
if klass is Callback:
return klass(name, retval, parameters,
node.attrib.get(_cns('type')))