summaryrefslogtreecommitdiff
path: root/giscanner/gdumpparser.py
diff options
context:
space:
mode:
authorColin Walters <walters@verbum.org>2010-09-01 17:55:30 -0400
committerColin Walters <walters@verbum.org>2010-09-01 17:55:30 -0400
commitf9db355f2f1f55307e32e0f9f2d787f46941681b (patch)
treeaed47efe287c73eb9ee78914b9942267a74a1197 /giscanner/gdumpparser.py
parentfb6979ec7555bba02ebf80cb8756ae274759ac8e (diff)
downloadgobject-introspection-f9db355f2f1f55307e32e0f9f2d787f46941681b.tar.gz
scanner: Better handling of GType names
Before, Type instances could be indeterminate, holding a "ctype", which means "This is some unresolved string". However, we also get data from GType, so add gtype_name as another indeterminate state. Clean up how we create and resolve Type instances from GType data.
Diffstat (limited to 'giscanner/gdumpparser.py')
-rw-r--r--giscanner/gdumpparser.py12
1 files changed, 6 insertions, 6 deletions
diff --git a/giscanner/gdumpparser.py b/giscanner/gdumpparser.py
index ce6f9a25..ca9b38a9 100644
--- a/giscanner/gdumpparser.py
+++ b/giscanner/gdumpparser.py
@@ -301,7 +301,7 @@ blob containing data gleaned from GObject's primitive introspection."""
self._introspect_signals(node, xmlnode)
for child in xmlnode.findall('prerequisite'):
name = child.attrib['name']
- prereq = self._transformer.create_type_from_user_string(name)
+ prereq = self._transformer.create_type_from_gtype_name(name)
node.prerequisites.append(prereq)
# GtkFileChooserEmbed is an example of a private interface, we
# just filter them out
@@ -321,7 +321,7 @@ blob containing data gleaned from GObject's primitive introspection."""
def _introspect_implemented_interfaces(self, node, xmlnode):
gt_interfaces = []
for interface in xmlnode.findall('implements'):
- gitype = self._transformer.create_type_from_user_string(interface.attrib['name'])
+ gitype = self._transformer.create_type_from_gtype_name(interface.attrib['name'])
gt_interfaces.append(gitype)
node.interfaces = gt_interfaces
@@ -335,7 +335,7 @@ blob containing data gleaned from GObject's primitive introspection."""
construct_only = (flags & G_PARAM_CONSTRUCT_ONLY) != 0
node.properties.append(ast.Property(
pspec.attrib['name'],
- self._transformer.create_type_from_user_string(ctype),
+ self._transformer.create_type_from_gtype_name(ctype),
readable, writable, construct, construct_only,
ctype,
))
@@ -344,7 +344,7 @@ blob containing data gleaned from GObject's primitive introspection."""
def _introspect_signals(self, node, xmlnode):
for signal_info in xmlnode.findall('signal'):
rctype = signal_info.attrib['return']
- rtype = self._transformer.create_type_from_user_string(rctype)
+ rtype = self._transformer.create_type_from_gtype_name(rctype)
return_ = ast.Return(rtype)
parameters = []
for i, parameter in enumerate(signal_info.findall('param')):
@@ -353,7 +353,7 @@ blob containing data gleaned from GObject's primitive introspection."""
else:
argname = 'p%s' % (i-1, )
pctype = parameter.attrib['type']
- ptype = self._transformer.create_type_from_user_string(pctype)
+ ptype = self._transformer.create_type_from_gtype_name(pctype)
param = ast.Parameter(argname, ptype)
param.transfer = ast.PARAM_TRANSFER_NONE
parameters.append(param)
@@ -364,7 +364,7 @@ blob containing data gleaned from GObject's primitive introspection."""
def _parse_parents(self, xmlnode, node):
parents_str = xmlnode.attrib.get('parents', '')
if parents_str != '':
- parent_types = map(lambda s: self._transformer.create_type_from_user_string(s),
+ parent_types = map(lambda s: self._transformer.create_type_from_gtype_name(s),
parents_str.split(','))
else:
parent_types = []