diff options
author | Johan Dahlin <jdahlin@async.com.br> | 2009-01-12 23:24:01 +0000 |
---|---|---|
committer | Johan Dahlin <johan@src.gnome.org> | 2009-01-12 23:24:01 +0000 |
commit | 9256e916164ec557ed66f92a0d6d95bb286cdf8b (patch) | |
tree | e481541d55ca9eafb63684f2ee41d48096b8eac5 /giscanner/glibtransformer.py | |
parent | e81c4681cc88a00fcd841c5a68d860d3714b55d7 (diff) | |
download | gobject-introspection-9256e916164ec557ed66f92a0d6d95bb286cdf8b.tar.gz |
Bug 563591 – Flags not recognized when there is no introspection data
2009-01-12 Johan Dahlin <jdahlin@async.com.br>
Bug 563591 – Flags not recognized when there is no introspection data
* giscanner/ast.py:
* giscanner/girwriter.py:
* giscanner/giscannermodule.c (type_get_is_bitfield):
* giscanner/glibast.py:
* giscanner/glibtransformer.py:
* giscanner/scannerparser.y:
* giscanner/sourcescanner.c (gi_source_type_copy):
* giscanner/sourcescanner.h:
* giscanner/sourcescanner.py:
* giscanner/transformer.py:
* tests/scanner/foo-1.0-expected.gir:
* tests/scanner/foo-1.0-expected.tgir:
* tests/scanner/foo.h:
Large parts of this patch was done by Jürg Billeter.
svn path=/trunk/; revision=1025
Diffstat (limited to 'giscanner/glibtransformer.py')
-rw-r--r-- | giscanner/glibtransformer.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/giscanner/glibtransformer.py b/giscanner/glibtransformer.py index ee39862e..d46c3c0f 100644 --- a/giscanner/glibtransformer.py +++ b/giscanner/glibtransformer.py @@ -25,8 +25,8 @@ import tempfile import shutil import subprocess -from .ast import (Callback, Constant, Enum, Function, Member, Namespace, - Parameter, Property, Return, Struct, Type, Alias, +from .ast import (Alias, Bitfield, Callback, Constant, Enum, Function, Member, + Namespace, Parameter, Property, Return, Struct, Type, Union, Field, type_name_from_ctype, default_array_types, TYPE_UINT8, PARAM_TRANSFER_FULL) from .transformer import Names @@ -259,6 +259,8 @@ class GLibTransformer(object): def _parse_node(self, node): if isinstance(node, Enum): self._parse_enum(node) + elif isinstance(node, Bitfield): + self._parse_bitfield(node) elif isinstance(node, Function): self._parse_function(node) elif isinstance(node, Struct): @@ -283,6 +285,9 @@ class GLibTransformer(object): def _parse_enum(self, enum): self._add_attribute(enum) + def _parse_bitfield(self, enum): + self._add_attribute(enum) + def _parse_constant(self, constant): self._add_attribute(constant) |