-XML format
+GIR XML format
----------
-- Document the format
-- Write a tool to create XML from annotated headers
+- Document the format better
- Add attributes to connect signals to their default handlers
and wrappers to their vfuncs
-- Add attributes for struct offsets
+- Add a way to specify default values
+- Add a way to mark init functions like gtk_init
+- For argument/return values etc, store only c:identifier in the
+ <class/> definition. Requires a link to the references type in the
+ Type node.
+- replace gidl/gdk-pixbuf.gidl with something generated from headers,
+ verify all information is available, possible to write
Binary format
-------------
-- Add hashes to lookup interfaces and functions in interfaces
-- Do we need (at least limited) handling of unions ? E.g. GdkEvent
-- Write a validator
+- Sort arrays so that we can use bsearch for lookup
+- Maybe add hashes to lookup interfaces and functions in interfaces
+- Add default values
+- Make annotations more flexible (and typed)
Compiler
--------
-- Parse qualified names like NAMESPACE.INTERFACE.FUNCTION
-- Cleanup, maybe turn the nodes in to objects to avoid the horrific
+- Cleanup, maybe turn the nodes in to objects to avoid the horrific
type switches
- Add thorough error checking
----------
- Reconsider the current clunky API, maybe an iterator approach is better
- Add thorough error checking
-- Use hashes
-- Implement g_function_info_invoke()
+- Use hashes
- Maybe allow populating repositories at runtime
+- Think about a system-wide repository mapping namespace ids to
+ libraries/metadata files
+- Fix extra indirection for out parameters in invoke
-General
+Scanner
+------
+- Property.readable/writable, GLibProperty.blurb/nick
+- Constants
+- Annotations in external files which is not source code
+
+C API
-------
-- More tests
-- Check how the format scales to something the size of GTK+
+- type SYMBOL is kind of inconvenient; would be nicer to go straight to
+ boxed, etc.
+- no way to construct a boxed type
+- no way to access struct fields (should have a way to go field -> GArgument)
+- types namespaced GI, functions namespaced g_
+- no way to get GType given a GIRegisteredTypeInfo