Johan Dahlin [Tue, 19 Aug 2008 21:35:55 +0000 (21:35 +0000)]
Add a g_ir_compiler variable
2008-08-19 Johan Dahlin <johan@gnome.org>
* gobject-introspection-1.0.pc.in:
Add a g_ir_compiler variable
svn path=/trunk/; revision=402
Colin Walters [Tue, 19 Aug 2008 21:20:14 +0000 (21:20 +0000)]
Rework types to be more closely based on GITypeTag. Parse more bits. Write
2008-08-19 Colin Walters <walters@verbum.org>
* giscanner/ast.py: Rework types to be more closely
based on GITypeTag.
* giscanner/girparser.py: Parse more bits.
* giscanner/girwriter.py: Write sequences in a new
way that specifies container type.
* giscanner/glibast.py: Adjust for ast.py changes,
add 'ctype' property to GLibObject and GLibInterface
so we can look things up by it later.
* gicanner/transformer.py: Names is new class holding
the various namespaces we manage. Do not confuse
with Namespace which is toplevel XML node effectively.
Rework all type resolution to go through
_resolve_type_name_1.
* giscanner/glibtransformer.py: Raise UnknownTypeError
instead of ValueError for cleanliness. Add Unresolved
class to mark types whose parent we haven't seen yet.
Use new Names object from transformer.py.
Correctly look up parent=.
Fix type validation to handle sequences.
* tests/scanner/Foo-expected.gir: Update for sequence
work, int instead of int32.
* tools/g-ir-scanner: Add --noclosure option
* gir/Makefile.am: Use --noclosure by default for
GLib/GObject.
svn path=/trunk/; revision=401
Colin Walters [Tue, 19 Aug 2008 21:20:10 +0000 (21:20 +0000)]
Type checking rework
svn path=/trunk/; revision=400
Johan Dahlin [Mon, 18 Aug 2008 20:43:48 +0000 (20:43 +0000)]
Regenerate.
2008-08-18 Johan Dahlin <johan@gnome.org>
* gir/gio-2.0-good.gir:
* gir/glib-2.0-good.gir:
* gir/gobject-2.0-good.gir:
Regenerate.
svn path=/trunk/; revision=399
Johan Dahlin [Mon, 18 Aug 2008 20:16:57 +0000 (20:16 +0000)]
Redo type resolving and validation. Add a couple of new tests. Patch
2008-08-18 Johan Dahlin <johan@gnome.org>
* giscanner/ast.py:
* giscanner/girparser.py:
* giscanner/girwriter.py:
* giscanner/glibast.py:
* giscanner/glibtransformer.py:
* giscanner/transformer.py:
* tests/scanner/Foo-expected.gir:
* tests/scanner/foo-object.h:
* tests/scanner/utility-expected.gir:
* tests/scanner/utility.h:
Redo type resolving and validation.
Add a couple of new tests.
Patch mostly written by Colin.
svn path=/trunk/; revision=398
Johan Dahlin [Mon, 18 Aug 2008 18:01:21 +0000 (18:01 +0000)]
Set ctype of enums Improve enum parsing for enums without a GType. Make
2008-08-18 Johan Dahlin <johan@gnome.org>
* gir/Makefile.am:
* giscanner/girparser.py:
Set ctype of enums
* giscanner/transformer.py:
Improve enum parsing for enums without a GType.
Make flags/enum references to other girs work
* giscanner/utils.py:
Simplify this a bit
* tests/scanner/Makefile.am:
* tests/scanner/foo-object.h:
* tests/scanner/utility-expected.gir:
* tests/scanner/utility.h:
Add a new test for external enum references
svn path=/trunk/; revision=397
Johan Dahlin [Mon, 18 Aug 2008 14:19:56 +0000 (14:19 +0000)]
Update
2008-08-18 Johan Dahlin <johan@gnome.org>
* docs/global-module-registry.txt: Update
svn path=/trunk/; revision=396
Johan Dahlin [Mon, 18 Aug 2008 13:17:06 +0000 (13:17 +0000)]
Update with new type proposal
2008-08-18 Johan Dahlin <johan@gnome.org>
* tests/array.gir: Update with new type proposal
svn path=/trunk/; revision=395
Johan Dahlin [Mon, 18 Aug 2008 08:52:47 +0000 (08:52 +0000)]
Make enum serializing functions public. Clean up some whitespace.
2008-08-18 Johan Dahlin <johan@gnome.org>
* girepository/girepository.c (g_type_tag_to_string):
* girepository/girepository.h:
* girepository/girnode.c (g_ir_node_get_full_size_internal),
(find_entry_node):
* girepository/girnode.h:
Make enum serializing functions public. Clean up some whitespace.
svn path=/trunk/; revision=394
Johan Dahlin [Sun, 17 Aug 2008 20:29:08 +0000 (20:29 +0000)]
Add a document for an on disk module registry format
2008-08-17 Johan Dahlin <johan@gnome.org>
* docs/global-module-registry.txt:
Add a document for an on disk module registry format
svn path=/trunk/; revision=393
Johan Dahlin [Sun, 17 Aug 2008 17:01:23 +0000 (17:01 +0000)]
Add a gio gir.
2008-08-17 Johan Dahlin <johan@gnome.org>
* gir/Makefile.am:
* gir/gio-2.0-good.gir:
Add a gio gir.
svn path=/trunk/; revision=392
Johan Dahlin [Sun, 17 Aug 2008 16:52:46 +0000 (16:52 +0000)]
Regenerate GObject & GType. Avoid warnings when generating
2008-08-17 Johan Dahlin <johan@gnome.org>
* gir/Makefile.am:
* gir/glib-2.0-good.gir:
* gir/gobject-2.0-good.gir:
* giscanner/cgobject.py:
* giscanner/glibtransformer.py:
Regenerate GObject & GType.
Avoid warnings when generating gobject-2.0.gir.
Introspect a little more, and skip *_get_type functions.
svn path=/trunk/; revision=391
Colin Walters [Sun, 17 Aug 2008 15:06:49 +0000 (15:06 +0000)]
Move .gir files to -good.gir, tweak build order.
* gir/glib-2.0.gir, gir/gobject-2.0.gir:
Rename to -good, always generate during build.
* gir/Makefile.am: Ensure .gir files dep on
all scanner sources.
* Makefile.am: Switch build order to ensure
the scanner is ready before we do gir/.
* tools/g-ir-scanner: Look for .git too.
svn path=/trunk/; revision=390
Johan Dahlin [Sat, 16 Aug 2008 22:26:55 +0000 (22:26 +0000)]
Remove resolve_possible_typedefs, it was unused. Allow multiple enum
2008-08-17 Johan Dahlin <johan@gnome.org>
* girepository/gtypelib.c (validate_enum_blob):
* giscanner/glibtransformer.py:
* giscanner/transformer.py:
Remove resolve_possible_typedefs, it was unused.
Allow multiple enum values of the sample value in an enum,
since it's actually pretty common.
Register enums so they can be resolved too.
svn path=/trunk/; revision=389
Johan Dahlin [Sat, 16 Aug 2008 21:57:59 +0000 (21:57 +0000)]
make it compile again...
svn path=/trunk/; revision=388
Johan Dahlin [Sat, 16 Aug 2008 21:55:06 +0000 (21:55 +0000)]
Reorder
svn path=/trunk/; revision=387
Johan Dahlin [Sat, 16 Aug 2008 21:46:23 +0000 (21:46 +0000)]
Parse enumeration/bitfield.
2008-08-16 Johan Dahlin <johan@gnome.org>
* giscanner/girparser.py:
Parse enumeration/bitfield.
svn path=/trunk/; revision=386
Johan Dahlin [Sat, 16 Aug 2008 21:32:41 +0000 (21:32 +0000)]
Parse boxed types.
2008-08-16 Johan Dahlin <johan@gnome.org>
* giscanner/girparser.py:
Parse boxed types.
svn path=/trunk/; revision=385
Johan Dahlin [Sat, 16 Aug 2008 21:28:15 +0000 (21:28 +0000)]
Resolve type names for alias targets Skip FILE* parameters fow now
2008-08-16 Johan Dahlin <johan@gnome.org>
* giscanner/glibtransformer.py:
Resolve type names for alias targets
* giscanner/transformer.py:
Skip FILE* parameters fow now
svn path=/trunk/; revision=384
Johan Dahlin [Sat, 16 Aug 2008 10:04:06 +0000 (10:04 +0000)]
Regenerate
2008-08-16 Johan Dahlin <johan@gnome.org>
* gir/glib-2.0.gir:
* gir/gobject-2.0.gir:
Regenerate
* tests/scanner/Makefile.am:
parser -> scanner
svn path=/trunk/; revision=383
Colin Walters [Fri, 15 Aug 2008 05:17:54 +0000 (05:17 +0000)]
Explicitly construct new list, since we're deleting as we iterate. Don't
2008-08-15 Colin Walters <walters@verbum.org>
* giscanner/glibtransformer.py: Explicitly construct
new list, since we're deleting as we iterate.
Don't delete all structures which end in Class; just
ones which have a paired GObject.
Fix printing of type warning.
* giscanner/transformer.py: Make strip_namespace_object
be the identity function if it doesn't match the
namespace.
svn path=/trunk/; revision=382
Colin Walters [Fri, 15 Aug 2008 05:03:16 +0000 (05:03 +0000)]
Define yet more argument prototypes; fix prototype for g_type_fundamental.
2008-08-15 Colin Walters <walters@verbum.org>
* giscanner/cgobject.py: Define yet more argument
prototypes; fix prototype for g_type_fundamental.
svn path=/trunk/; revision=381
Johan Dahlin [Thu, 14 Aug 2008 20:22:58 +0000 (20:22 +0000)]
Convert two more tests, still not completely done though
svn path=/trunk/; revision=380
Johan Dahlin [Thu, 14 Aug 2008 19:45:37 +0000 (19:45 +0000)]
Fix generator for constant/gobject/struct
2008-08-14 Johan Dahlin <johan@gnome.org>
* tests/Makefile.am:
* tests/constant.gir:
* tests/gobject.gir:
* tests/struct.gir:
* tools/generate.c (write_struct_info):
Fix generator for constant/gobject/struct
svn path=/trunk/; revision=379
Johan Dahlin [Thu, 14 Aug 2008 19:35:36 +0000 (19:35 +0000)]
Fix generation of enum/bitfields
2008-08-14 Johan Dahlin <johan@gnome.org>
* tests/Makefile.am:
* tests/enum.gir:
* tools/generate.c (write_enum_info):
Fix generation of enum/bitfields
svn path=/trunk/; revision=378
Johan Dahlin [Thu, 14 Aug 2008 19:32:26 +0000 (19:32 +0000)]
Clear up constant parsing
2008-08-14 Johan Dahlin <johan@gnome.org>
* girepository/girparser.c (start_field), (start_constant),
(start_type), (end_element_handler):
Clear up constant parsing
* tests/object.gir:
Update
* tools/generate.c (write_callable_info), (write_function_info),
(write_callback_info), (write_constant_info), (write_signal_info),
(write_vfunc_info), (write_property_info), (write_object_info),
(write_interface_info):
Constants/Signals are handled now.
svn path=/trunk/; revision=377
Johan Dahlin [Thu, 14 Aug 2008 19:07:34 +0000 (19:07 +0000)]
Don't require c:type. Test boxed.gir Update, remove parts we don't support
2008-08-14 Johan Dahlin <johan@gnome.org>
* girepository/girparser.c (start_type):
Don't require c:type.
* tests/Makefile.am:
Test boxed.gir
* tests/boxed.gir:
Update, remove parts we don't support yet
* tests/roundtrips.sh:
Remove
* tools/generate.c (write_type_info), (write_field_info),
(write_callable_info), (write_struct_info):
Make it emit proper gir.
svn path=/trunk/; revision=376
Johan Dahlin [Thu, 14 Aug 2008 16:56:47 +0000 (16:56 +0000)]
New internal function for adding a new node.
2008-08-14 Johan Dahlin <johan@gnome.org>
* giscanner/transformer.py:
New internal function for adding a new node.
svn path=/trunk/; revision=375
Johan Dahlin [Thu, 14 Aug 2008 16:30:01 +0000 (16:30 +0000)]
Define an internal _H_ variable so we skip parsing both i18n headers, only
2008-08-14 Johan Dahlin <johan@gnome.org>
* gir/Makefile.am:
Define an internal _H_ variable so we skip parsing both
i18n headers, only one is needed.
* gir/glib-2.0.gir:
Add the glib-2.0.gir too.
* giscanner/glibast.py:
Add gconstpointer as an alias for ANY
* giscanner/transformer.py:
Do not lower case enumeration names per se.
Skip functions which has parameters called 'va_list'
svn path=/trunk/; revision=374
Colin Walters [Thu, 14 Aug 2008 16:09:06 +0000 (16:09 +0000)]
Comment data structures. Also squash pointers in resolve_type_name to
2008-08-14 Colin Walters <walters@verbum.org>
* giscanner/transformer.py: Comment data structures.
Also squash pointers in resolve_type_name to correspond
with what we do for params.
* giscanner/glibtransformer.py: Print warnings in more
situations. Rework checks for method/constructor to
look up in our GType database instead of just checking
for *. Avoid generating <record> for GObject which
duplicate the <class>.
* gir/Makefile.am: Generate glib-2.0.gir and gobject-2.0.gir
in here.
svn path=/trunk/; revision=373
Johan Dahlin [Thu, 14 Aug 2008 11:31:24 +0000 (11:31 +0000)]
Avoid importing two GObject symbols in transformer.py
svn path=/trunk/; revision=372
Johan Dahlin [Thu, 14 Aug 2008 11:30:01 +0000 (11:30 +0000)]
Make pyflakes.py conform to pep8.py
svn path=/trunk/; revision=371
Johan Dahlin [Thu, 14 Aug 2008 11:23:26 +0000 (11:23 +0000)]
Add pyflakes.py and run it in make check. Update the source code to fix
2008-08-14 Johan Dahlin <johan@gnome.org>
* giscanner/girwriter.py:
* giscanner/glibast.py:
* giscanner/glibtransformer.py:
* giscanner/transformer.py:
* misc/pyflakes.py:
* tests/Makefile.am:
Add pyflakes.py and run it in make check.
Update the source code to fix the errors reported by
pyflakes.
svn path=/trunk/; revision=370
Johan Dahlin [Thu, 14 Aug 2008 11:13:51 +0000 (11:13 +0000)]
Refactor the parser a bit. Add parent type to interfaces and update
2008-08-14 Johan Dahlin <johan@gnome.org>
* giscanner/ast.py:
* giscanner/girparser.py:
* giscanner/glibast.py:
* giscanner/glibtransformer.py:
Refactor the parser a bit.
Add parent type to interfaces and update callsites.
svn path=/trunk/; revision=369
Johan Dahlin [Thu, 14 Aug 2008 09:54:09 +0000 (09:54 +0000)]
Clean up cgobject.py a little, fix pep8 errors
svn path=/trunk/; revision=368
Johan Dahlin [Thu, 14 Aug 2008 09:47:58 +0000 (09:47 +0000)]
Refactor a bit, avoid isinstance and add a method for each type we parse.
2008-08-14 Johan Dahlin <johan@gnome.org>
* giscanner/glibtransformer.py:
* giscanner/utils.py:
Refactor a bit, avoid isinstance and add a method
for each type we parse.
svn path=/trunk/; revision=367
Johan Dahlin [Thu, 14 Aug 2008 09:28:38 +0000 (09:28 +0000)]
Run pep8.py in make check, fix old errors.
2008-08-14 Johan Dahlin <johan@gnome.org>
* giscanner/ast.py:
* giscanner/girparser.py:
* giscanner/glibtransformer.py:
* tests/Makefile.am:
Run pep8.py in make check, fix old errors.
svn path=/trunk/; revision=366
Colin Walters [Wed, 13 Aug 2008 22:23:06 +0000 (22:23 +0000)]
Parse records.
2008-08-13 Colin Walters <walters@verbum.org>
* giscanner/girparser.py: Parse records.
svn path=/trunk/; revision=365
Colin Walters [Wed, 13 Aug 2008 22:19:04 +0000 (22:19 +0000)]
Install again. Add some more bits.
2008-08-13 Colin Walters <walters@verbum.org>
* gir/Makefile.am: Install again.
* gir/gobject-2.0.gir: Add some more bits.
svn path=/trunk/; revision=364
Colin Walters [Wed, 13 Aug 2008 22:06:59 +0000 (22:06 +0000)]
Use correct namespace, add GType. Handle aliases. Record aliases. Make
2008-08-13 Colin Walters <walters@verbum.org>
* gir/gobject-2.0.gir: Use correct namespace, add GType.
* giscanner/girparser.py: Handle aliases.
* giscanner/transformer.py: Record aliases. Make resolver
functions public; we now call into these explicitly from
glibtransformer. Handle resolving aliases.
* giscanner/glibtransformer.py: Separate our internal namespace
from included ones. Call up into transformer's resolver functions.
svn path=/trunk/; revision=363
Johan Dahlin [Wed, 13 Aug 2008 21:44:38 +0000 (21:44 +0000)]
Allow get_type to be None, set a get_type for GInitiallyUnowned too.
2008-08-13 Johan Dahlin <johan@gnome.org>
* girepository/girnode.c (g_ir_node_get_full_size_internal):
* girepository/girparser.c (start_class):
* giscanner/glibtransformer.py:
Allow get_type to be None, set a get_type for GInitiallyUnowned too.
svn path=/trunk/; revision=362
Johan Dahlin [Wed, 13 Aug 2008 21:26:16 +0000 (21:26 +0000)]
remote two prints
svn path=/trunk/; revision=361
Johan Dahlin [Wed, 13 Aug 2008 21:25:15 +0000 (21:25 +0000)]
Register GInitiallyUnowned
2008-08-13 Johan Dahlin <johan@gnome.org>
* giscanner/cgobject.py:
Register GInitiallyUnowned
* giscanner/girwriter.py:
* giscanner/glibtransformer.py:
Special case GObject/GInitially owned as they are a bit special to use.
svn path=/trunk/; revision=360
Colin Walters [Wed, 13 Aug 2008 21:02:15 +0000 (21:02 +0000)]
Object is in GObject namespace.
2008-08-13 Colin Walters <walters@verbum.org>
* tests/scanner/Foo-expected.gir, tests/scanner/utility-expected.gir:
Object is in GObject namespace.
svn path=/trunk/; revision=359
Colin Walters [Wed, 13 Aug 2008 20:44:58 +0000 (20:44 +0000)]
Fix processing of functions from last commit.
2008-08-13 Colin Walters <walters@verbum.org>
* giscanner/girparser.py: Fix processing of functions
from last commit.
svn path=/trunk/; revision=358
Colin Walters [Wed, 13 Aug 2008 20:36:15 +0000 (20:36 +0000)]
Parse more than just <class. Put aliases in a separate data structure
2008-08-13 Colin Walters <walters@verbum.org>
* giscanner/girparser.py: Parse more than just <class.
* giscanner/glibtransformer.py: Put aliases in a separate
data structure since their name is not canonicall.
* giscanner/transformer.py: Handle resolving type names
from includes.
svn path=/trunk/; revision=357
Johan Dahlin [Wed, 13 Aug 2008 20:24:10 +0000 (20:24 +0000)]
Allow multiple libraries Rename load_library to add_library, traverse over
2008-08-13 Johan Dahlin <johan@gnome.org>
* tools/g-ir-scanner:
Allow multiple libraries
* giscanner/glibtransformer.py:
Rename load_library to add_library, traverse over all libraries
when trying to resolve a function
svn path=/trunk/; revision=356
Colin Walters [Wed, 13 Aug 2008 16:10:09 +0000 (16:10 +0000)]
Record typedefs as <alias> elements. Also attempt to look up types in
2008-08-12 Colin Walters <walters@verbum.org>
* giscanner/transformer.py: Record typedefs as <alias> elements.
Also attempt to look up types in external namespaces.
* giscanner/girwriter.py: Write them.
* giscanner/glibtransformer.py: Rework resolver using real instanceof
checks. Resolve interface methods and properties.
* tests/scanner/foo-object.h: Add a method with typedef.
* tests/scanner/Foo-expected.gir: Update.
* girepository/girnode.c: Debug tweaks.
* girepository/girparser.c: Make a first pass through the XML where we
record all the aliases. This lets us resolve them as we go through the
second pass.
* gir/Makefile.am: Don't install gobject-2.0.gir; we want that to come
from gir-repository.
svn path=/trunk/; revision=355
Colin Walters [Tue, 12 Aug 2008 19:20:43 +0000 (19:20 +0000)]
Also transform object properties.
2008-08-12 Colin Walters <walters@verbum.org>
* giscanner/glibtransformer.py: Also transform object properties.
svn path=/trunk/; revision=354
Colin Walters [Tue, 12 Aug 2008 19:07:40 +0000 (19:07 +0000)]
pep8
svn path=/trunk/; revision=353
Colin Walters [Tue, 12 Aug 2008 19:06:34 +0000 (19:06 +0000)]
Also transform callbacks and structure field types. Update to expect
2008-08-12 Colin Walters <walters@verbum.org>
* giscanner/glibtransformer.py: Also transform callbacks
and structure field types.
* tests/scanner/Fooe-expected.gir: Update to expect correct
names for callbacks and structs.
svn path=/trunk/; revision=352
Colin Walters [Tue, 12 Aug 2008 18:49:16 +0000 (18:49 +0000)]
Handle 'any'. Add test for void *.
2008-08-12 Colin Walters <walters@verbum.org>
* girepository/girparser.c: Handle 'any'.
* tests/scanner/Foo-expected.gir, tests/scanner/foo-object.h:
Add test for void *.
svn path=/trunk/; revision=351
Colin Walters [Tue, 12 Aug 2008 18:36:33 +0000 (18:36 +0000)]
We need to do type resolution in a second pass after we've seen all the
2008-08-12 Colin Walters <walters@verbum.org>
* giscanner/glibtransformer.py: We need to do type
resolution in a second pass after we've seen all the
enums, records, etc.
svn path=/trunk/; revision=350
Colin Walters [Tue, 12 Aug 2008 17:31:50 +0000 (17:31 +0000)]
Add enum return value. Transform function return types too.
2008-08-12 Colin Walters <walters@verbum.org>
* tests/scanner/Foo-expected.gir, tests/scanner/foo-object.h:
Add enum return value.
* giscanner/glibtransformer.py: Transform function return types
too.
svn path=/trunk/; revision=349
Colin Walters [Tue, 12 Aug 2008 17:13:59 +0000 (17:13 +0000)]
Dep .gir files on scanner sources too. Also remove @ so we see scanner
2008-08-12 Colin Walters <walters@verbum.org>
* tests/scanner/Makefile.am: Dep .gir files on scanner
sources too. Also remove @ so we see scanner invocations.
svn path=/trunk/; revision=348
Colin Walters [Tue, 12 Aug 2008 15:34:27 +0000 (15:34 +0000)]
Remove usage of (GAPI-oriented) TypeTag in favor of GITypeTag from
2008-08-12 Colin Walters <walters@verbum.org>
* girepository/girparser.c, girepository/gtypelib.c,
girepository/gtypelib.h, girepository/girnode.c:
Remove usage of (GAPI-oriented) TypeTag in favor of
GITypeTag from girepository.h.
svn path=/trunk/; revision=347
Colin Walters [Sun, 10 Aug 2008 20:54:00 +0000 (20:54 +0000)]
Use the correct tests.
2008-08-10 Colin Walters <walters@verbum.org>
* tests/roundtrip.sh: Use the correct tests.
svn path=/trunk/; revision=346
Johan Dahlin [Sun, 10 Aug 2008 20:37:03 +0000 (20:37 +0000)]
PEP-8*
svn path=/trunk/; revision=345
Colin Walters [Sun, 10 Aug 2008 20:34:18 +0000 (20:34 +0000)]
Add new decorator @gwrap which forces us to declare types for both return
2008-08-10 Colin Walters <walters@verbum.org>
* giscanner/cgobject.py: Add new decorator @gwrap which forces
us to declare types for both return value and parameters. The
ctypes default of 'int' is bad because it hides 32/64 bit
problems. Convert all existing functions to use it.
svn path=/trunk/; revision=344
Johan Dahlin [Sun, 10 Aug 2008 20:20:41 +0000 (20:20 +0000)]
add a pep8 script
svn path=/trunk/; revision=343
Johan Dahlin [Sat, 9 Aug 2008 13:17:00 +0000 (13:17 +0000)]
Clean up gcov integration a bit
svn path=/trunk/; revision=342
Johan Dahlin [Sat, 9 Aug 2008 13:07:11 +0000 (13:07 +0000)]
PEP8ify
2008-08-09 Johan Dahlin <johan@gnome.org>
* giscanner/__init__.py:
* giscanner/ast.py:
* giscanner/cgobject.py:
* giscanner/gidlparser.py:
* giscanner/gidlwriter.py:
* giscanner/girparser.py:
* giscanner/girwriter.py:
* giscanner/glibast.py:
* giscanner/glibtransformer.py:
* giscanner/odict.py:
* giscanner/sourcescanner.py:
* giscanner/transformer.py:
* giscanner/utils.py:
* giscanner/xmlwriter.py:
* tools/g-ir-scanner:
PEP8ify
svn path=/trunk/; revision=341
Johan Dahlin [Sat, 9 Aug 2008 12:59:52 +0000 (12:59 +0000)]
Remove outdated relaxng schemas.
2008-08-09 Johan Dahlin <johan@gnome.org>
* relaxng/api.xml:
* relaxng/c-types.xml:
* relaxng/g-types.xml:
* relaxng/relaxng.rng:
* relaxng/util.xml:
Remove outdated relaxng schemas.
svn path=/trunk/; revision=340
Johan Dahlin [Sat, 9 Aug 2008 12:55:32 +0000 (12:55 +0000)]
Rename metadata to typelib in variable names, comments and apis.
2008-08-09 Johan Dahlin <johan@gnome.org>
* *.[ch]:
Rename metadata to typelib in variable names,
comments and apis.
svn path=/trunk/; revision=339
Johan Dahlin [Sat, 9 Aug 2008 12:48:02 +0000 (12:48 +0000)]
Remove old C scanner, which got rewritten in python.
2008-08-09 Johan Dahlin <johan@gnome.org>
* tools/scanner.c:
* tools/scanner.h:
Remove old C scanner, which got rewritten in python.
svn path=/trunk/; revision=338
Johan Dahlin [Sat, 9 Aug 2008 12:46:48 +0000 (12:46 +0000)]
Move shared *.[ch] files to girepository from tools
2008-08-09 Johan Dahlin <johan@gnome.org>
* girepository/Makefile.am:
* tools/Makefile.am:
* tools/girmodule.c:
* tools/girmodule.h:
* tools/girnode.c:
* tools/girnode.h:
* tools/girparser.c:
* tools/girparser.h:
* tools/girwriter.c:
* tools/girwriter.h:
Move shared *.[ch] files to girepository from tools
svn path=/trunk/; revision=337
Johan Dahlin [Sat, 9 Aug 2008 12:37:06 +0000 (12:37 +0000)]
Rename *.test to *.gir
2008-08-09 Johan Dahlin <johan@gnome.org>
* tests/Makefile.am:
* tests/array.test:
* tests/boxed.test:
* tests/constant.test:
* tests/enum.test:
* tests/errors.test:
* tests/function.test:
* tests/gobject.test:
* tests/interface.test:
* tests/object.test:
* tests/struct.test:
* tests/types.test:
* tests/union.test:
* tests/xref1.test:
* tests/xref2.test:
Rename *.test to *.gir
svn path=/trunk/; revision=335
Johan Dahlin [Sat, 9 Aug 2008 12:34:29 +0000 (12:34 +0000)]
Rename tests/parser to test/scanner
2008-08-09 Johan Dahlin <johan@gnome.org>
* configure.ac:
* tests/Makefile.am:
* tests/parser/Foo-expected.gir:
* tests/parser/Makefile.am:
* tests/parser/foo-object.h:
* tests/parser/foo.c:
* tests/parser/utility-expected.gir:
* tests/parser/utility.c:
* tests/parser/utility.h:
* tests/scanner/Makefile.am:
Rename tests/parser to test/scanner
svn path=/trunk/; revision=334
Colin Walters [Sat, 9 Aug 2008 00:18:17 +0000 (00:18 +0000)]
Use local .gir files again.
2008-08-08 Colin Walters <walters@verbum.org>
* tests/roundtrips.sh: Use local .gir files again.
svn path=/trunk/; revision=333
Colin Walters [Sat, 9 Aug 2008 00:16:59 +0000 (00:16 +0000)]
.gir file depends on libtool library.
2008-08-08 Colin Walters <walters@verbum.org>
* tests/invoke/Makefile.am: .gir file depends on libtool
library.
svn path=/trunk/; revision=332
Colin Walters [Sat, 9 Aug 2008 00:15:29 +0000 (00:15 +0000)]
Pass through parent node so we can print the node whose child is NULL, if
2008-08-08 Colin Walters <walters@verbum.org>
* tools/girnode.c: Pass through parent node so we can
print the node whose child is NULL, if that occurs.
svn path=/trunk/; revision=331
Colin Walters [Sat, 9 Aug 2008 00:14:31 +0000 (00:14 +0000)]
Remove debug print
svn path=/trunk/; revision=330
Colin Walters [Sat, 9 Aug 2008 00:13:34 +0000 (00:13 +0000)]
Say explicitly which node was NULL
svn path=/trunk/; revision=329
Johan Dahlin [Fri, 8 Aug 2008 20:18:19 +0000 (20:18 +0000)]
disable a test
svn path=/trunk/; revision=328
Johan Dahlin [Fri, 8 Aug 2008 20:16:56 +0000 (20:16 +0000)]
Disable roundtrip tests which are not yet working Rewrite as gir.
2008-08-08 Johan Dahlin <johan@gnome.org>
* tests/Makefile.am:
Disable roundtrip tests which are not yet working
* tests/invoke/testfns.gir:
Rewrite as gir.
2008-08-08 Johan Dahlin <johan@gnome.org>
* tests/Makefile.am:
Disable roundtrip tests which are not yet working
* tests/invoke/testfns.gir:
Rewrite as gir.
svn path=/trunk/; revision=327
Johan Dahlin [Fri, 8 Aug 2008 20:05:49 +0000 (20:05 +0000)]
type -> ntype
2008-08-08 Johan Dahlin <johan@gnome.org>
* giscanner/girwriter.py:
type -> ntype
* giscanner/glibast.py:
* giscanner/glibtransformer.py:
Swap order of members, to keep it consistent with
base enum class
svn path=/trunk/; revision=326
Johan Dahlin [Fri, 8 Aug 2008 19:09:17 +0000 (19:09 +0000)]
Merge in the gir-compiler branch. Thanks to Philip and Colin for their
2008-08-08 Johan Dahlin <johan@gnome.org>
* girepository/gtypelib.c (validate_header):
* girepository/gtypelib.h:
* giscanner/ast.py:
* giscanner/girwriter.py:
* giscanner/sourcescanner.c (gi_source_symbol_ref),
(gi_source_symbol_unref):
* tests/array.test:
* tests/boxed.test:
* tests/constant.test:
* tests/enum.test:
* tests/errors.test:
* tests/function.test:
* tests/gobject.test:
* tests/interface.test:
* tests/invoke/Makefile.am:
* tests/invoke/testfns.xml:
* tests/object.test:
* tests/parser/Makefile.am:
* tests/roundtrips.sh:
* tests/struct.test:
* tests/types.test:
* tests/union.test:
* tests/xref1.test:
* tests/xref2.test:
* tools/Makefile.am:
* tools/compiler.c (main):
* tools/generate.c (write_callable_info), (write_function_info),
(write_repository):
* tools/gidlmodule.c:
* tools/gidlmodule.h:
* tools/gidlnode.c:
* tools/gidlnode.h:
* tools/gidlparser.c:
* tools/gidlparser.h:
* tools/gidlwriter.c:
* tools/gidlwriter.h:
* tools/scanner.c (create_node_from_gtype),
(create_node_from_ctype), (g_igenerator_process_properties),
(g_igenerator_process_signals), (g_igenerator_create_object),
(g_igenerator_create_interface), (g_igenerator_create_boxed),
(g_igenerator_create_enum), (g_igenerator_create_flags),
(g_igenerator_process_function_symbol),
(g_igenerator_process_unregistered_struct_typedef),
(g_igenerator_process_struct_typedef),
(g_igenerator_process_union_typedef),
(g_igenerator_process_enum_typedef),
(g_igenerator_process_function_typedef),
(g_igenerator_process_constant), (g_igenerator_process_symbols),
(g_igenerator_add_module), (g_igenerator_add_include_idl):
Merge in the gir-compiler branch.
Thanks to Philip and Colin for their help.
svn path=/trunk/; revision=325
Colin Walters [Sat, 26 Jul 2008 20:26:56 +0000 (20:26 +0000)]
Install g-idl-compiler and g-idl-generate to go along with how we're
2008-07-26 Colin Walters <walters@verbum.org>
* tools/Makefile.am (bin_PROGRAMS): Install g-idl-compiler
and g-idl-generate to go along with how we're changing this
module to be installed.
* gobject-introspection-1.0.pc.in: Set up Cflags and Libs.
svn path=/trunk/; revision=297
Colin Walters [Thu, 24 Jul 2008 19:20:40 +0000 (19:20 +0000)]
Add environment variable G_IREPOSITORY_VERBOSE so we can print out what
2008-07-24 Colin Walters <walters@verbum.org>
* girepository/girepository.c (g_irepository_register): Add
environment variable G_IREPOSITORY_VERBOSE so we can print
out what we're doing.
* girepository/girepository.c (g_irepository_register_file):
Add GError error message to g_debug call.
svn path=/trunk/; revision=296
Jürg Billeter [Tue, 8 Jul 2008 11:46:38 +0000 (11:46 +0000)]
Fix typo
2008-07-08 Jürg Billeter <j@bitron.ch>
* giscanner/glibast.py:
Fix typo
svn path=/trunk/; revision=295
Johan Dahlin [Sun, 22 Jun 2008 15:03:03 +0000 (15:03 +0000)]
metadata->typelib here too, bump version
svn path=/trunk/; revision=294
Johan Dahlin [Sun, 22 Jun 2008 15:00:28 +0000 (15:00 +0000)]
rename metadata-format.txt to typelib-format.txt
svn path=/trunk/; revision=293
Johan Dahlin [Sat, 21 Jun 2008 12:57:49 +0000 (12:57 +0000)]
Ignore a few more tags
2008-06-21 Johan Dahlin <jdahlin@async.com.br>
* giscanner/girparser.py (GIRParser._parse_api): Ignore a few
more tags
svn path=/trunk/; revision=292
Johan Dahlin [Fri, 20 Jun 2008 22:27:07 +0000 (22:27 +0000)]
Add support for gtk-doc annotations for allow-none. Add test case.
2008-06-20 Johan Dahlin <jdahlin@async.com.br>
* giscanner/ast.py:
* giscanner/girwriter.py:
* giscanner/transformer.py:
* tests/parser/Foo-expected.gir:
* tests/parser/foo-object.h:
* tests/parser/foo.c (foo_object_allow_none):
Add support for gtk-doc annotations for allow-none.
Add test case.
svn path=/trunk/; revision=291
Johan Dahlin [Fri, 20 Jun 2008 01:33:09 +0000 (01:33 +0000)]
Start using abstract type instead of the raw C types. Register a bunch of
2008-06-19 Johan Dahlin <jdahlin@async.com.br>
* giscanner/ast.py:
* giscanner/girwriter.py:
* giscanner/glibast.py:
* giscanner/glibtransformer.py:
* giscanner/transformer.py:
* tests/parser/Foo-expected.gir:
Start using abstract type instead of the raw C types.
Register a bunch of glib types we care about.
svn path=/trunk/; revision=290
Rob Taylor [Thu, 19 Jun 2008 22:22:48 +0000 (22:22 +0000)]
Update authors
2008-06-19 Rob Taylor <rob.taylor@codethink.co.uk>
* AUTHORS:
Update authors
svn path=/trunk/; revision=289
Philip Van Hoof [Sun, 8 Jun 2008 14:37:30 +0000 (14:37 +0000)]
tools/gidlnode.c
2008-06-08 Philip Van Hoof <pvanhoof@gnome.org>
* girepository/girepository.c:
* girepository/gtypelib.c:
* girepository/ginfo.c:
* girepository/ginvoke.c:
* girepository/girepository.h:
* girepository/gtypelib.h:
* girepository/gmetadata.c:
* girepository/Makefile.am:
* girepository/gmetadata.h:
* tools/compiler.c:
* tools/gidlmodule.c:
* tools/gidlnode.c
* tools/generate.c:
* tools/gidlmodule.h:
* tools/gidlparser.c:
Renamed GMetadata to GTypelib
svn path=/trunk/; revision=288
Johan Dahlin [Sun, 8 Jun 2008 14:33:19 +0000 (14:33 +0000)]
Regenerate with proper indentation
svn path=/trunk/; revision=287
Johan Dahlin [Sat, 7 Jun 2008 12:39:35 +0000 (12:39 +0000)]
Improve line wrapping when > 79 charaters
2008-06-07 Johan Dahlin <jdahlin@async.com.br>
* giscanner/xmlwriter.py:
Improve line wrapping when > 79 charaters
svn path=/trunk/; revision=286
Jürg Billeter [Thu, 5 Jun 2008 11:45:46 +0000 (11:45 +0000)]
Use <type> element for field types Update testcase
2008-06-05 Jürg Billeter <j@bitron.ch>
* giscanner/ast.py:
* giscanner/girwriter.py:
* giscanner/transformer.py:
Use <type> element for field types
* tests/parser/Foo-expected.gir:
Update testcase
svn path=/trunk/; revision=285
Johan Dahlin [Wed, 4 Jun 2008 22:38:35 +0000 (22:38 +0000)]
Fix a bug which prevented GdkEvent from being generated
2008-06-04 Johan Dahlin <jdahlin@async.com.br>
* giscanner/glibtransformer.py:
Fix a bug which prevented GdkEvent from being generated
svn path=/trunk/; revision=284
Johan Dahlin [Tue, 3 Jun 2008 23:32:04 +0000 (23:32 +0000)]
Improve enum member parsing and introspection
2008-06-03 Johan Dahlin <jdahlin@async.com.br>
* giscanner/Makefile.am:
* giscanner/ast.py:
* giscanner/girwriter.py:
* giscanner/glibast.py:
* giscanner/glibtransformer.py:
* giscanner/transformer.py:
* giscanner/utils.py:
* tests/parser/Foo-expected.gir:
Improve enum member parsing and introspection
svn path=/trunk/; revision=283
Johan Dahlin [Sat, 31 May 2008 23:23:23 +0000 (23:23 +0000)]
Revert this part, it broke atk
svn path=/trunk/; revision=282
Johan Dahlin [Sat, 31 May 2008 23:20:56 +0000 (23:20 +0000)]
Add a new source type enum for member. Use __repr__ for improved debugging
2008-05-31 Johan Dahlin <jdahlin@async.com.br>
* giscanner/scannerparser.y:
* giscanner/sourcescanner.h:
* giscanner/sourcescanner.py:
Add a new source type enum for member.
Use __repr__ for improved debugging
* giscanner/girparser.py:
Ignore some more
* giscanner/transformer.py:
Improve parsing of struct members.
* tests/parser/foo-object.h:
Add a new testcase
svn path=/trunk/; revision=281
Johan Dahlin [Sat, 31 May 2008 21:28:33 +0000 (21:28 +0000)]
Improve error reporting when trying to quote None. Do not print warnings
2008-05-31 Johan Dahlin <jdahlin@async.com.br>
* giscanner/xmlwriter.py:
Improve error reporting when trying to quote None.
* giscanner/girparser.py:
Do not print warnings when including more complete .gir files
* giscanner/girwriter.py:
Do not require a name for parameters, add a todo for singletons
* giscanner/glibtransformer.py:
Refactor the way structs are done, add a couple of hacks to allow
us to get further.
* giscanner/transformer.py:
Add enough hacks so cairo, atk and pango.gir can be parsed properly
* gobject-introspection-1.0.pc.in:
Export girdir, so we can access gobject-2.0.gir from outside
svn path=/trunk/; revision=280
Johan Dahlin [Sat, 31 May 2008 21:06:14 +0000 (21:06 +0000)]
And the Makefile, d'oh
svn path=/trunk/; revision=279
Johan Dahlin [Sat, 31 May 2008 21:04:59 +0000 (21:04 +0000)]
Update sys.path before running the parser so we don't have to setup
2008-05-31 Johan Dahlin <jdahlin@async.com.br>
* tools/g-ir-scanner:
* tests/parser/Makefile.am:
Update sys.path before running the parser so we don't have
to setup PYTHONPATH ourselves.
svn path=/trunk/; revision=278
Johan Dahlin [Sat, 31 May 2008 20:49:42 +0000 (20:49 +0000)]
Rename pkg-config name to gobject-introspection-1.0, Do not installed
2008-05-31 Johan Dahlin <jdahlin@async.com.br>
* Makefile.am:
* configure.ac:
* girepository/Makefile.am:
* giscanner/transformer.py:
* gobject-introspection-1.0.pc.in:
* gobject-introspection.pc.in:
* tools/Makefile.am:
Rename pkg-config name to gobject-introspection-1.0,
Do not installed anything which is not using the gir format.
Disable compililation the old C scanner, but still keep the source
until all the remaning functionallity has been ported.
svn path=/trunk/; revision=277
Johan Dahlin [Sat, 31 May 2008 14:14:07 +0000 (14:14 +0000)]
Prevent a crash when symbol->indent is NULL.
2008-05-31 Johan Dahlin <jdahlin@async.com.br>
* giscanner/giscannermodule.c (symbol_get_ident): Prevent
a crash when symbol->indent is NULL.
svn path=/trunk/; revision=276
Johan Dahlin [Sat, 31 May 2008 14:13:18 +0000 (14:13 +0000)]
Add ctype_name, a function to convert a CTYPE symbol to a string
2008-05-31 Johan Dahlin <jdahlin@async.com.br>
* giscanner/sourcescanner.py (ctype_name): Add ctype_name,
a function to convert a CTYPE symbol to a string
svn path=/trunk/; revision=275