Sha256: 481301819affe6ecbeaf83e7b44fca3186a3225f0af18f523205b49d0960252c

Contents?: true

Size: 1.49 KB

Versions: 9

Compression:

Stored size: 1.49 KB

Contents

= TODO

== Memory managment

GirFFI does not attempt to free any memory at the moment, or lower the
reference count of any objects it gets from GObject. This task therefore involves two parts:

- Free non-GObject pointers as needed (at garbage-collection time)
- Lower reference count of GObjects (at garbage-collection time)

== Persistent Ruby GObject identity

GirFFI should make sure that if it gets a pointer to a GObject for which a Ruby
object already exists, the existing object is returned. This involves the use
of WeakRef, no doubt.

== Remove code for passing generic pointers

Generic pointers have been declared 'not introspectable', so
handling them can be removed.

== Handle fundamental objects that are not GObject.

This is a big one. See commit 1e9822c7817062a9b853269b9418fd78782090b5 in
gobject-introspection, and TestFundamentalObject in Regress.

The tests for TestFundamentalObject accidentally pass, but there may be
hidden issues.

== Check binding of GObject:

(11:37:03 PM) walters: the basic story is that GObject should be manually bound
(11:47:02 PM) ebassi: the really necessary bits are: GObject/GInitiallyUnowned memory management; properties accessors; GSignal connection API
(11:47:15 PM) ebassi: the rest is "nice to have"
(11:47:37 PM) ebassi: oh, and probably GBinding - but that's just because I wrote it ;-)

== Compatibility with all implementations.

GirFFI is incompatible with Rubinius, but this is due to Rubinius' FFI
implementation lagging behind the others.

== See Also

  dnote

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
gir_ffi-0.6.5 TODO.rdoc
gir_ffi-0.6.4 TODO.rdoc
gir_ffi-0.6.3 TODO.rdoc
gir_ffi-0.6.2 TODO.rdoc
gir_ffi-0.6.1 TODO.rdoc
gir_ffi-0.6.0 TODO.rdoc
gir_ffi-0.5.2 TODO.rdoc
gir_ffi-0.5.1 TODO.rdoc
gir_ffi-0.5.0 TODO.rdoc