||2002-09-02 22:02:37 GMT
||2009-07-26 04:30:09 GMT
(Projects of this owner)
== CGenerator is now a gem on rubyforge!
Use 'gem install cgen' to install.
Framework for dynamically generating C extensions from Ruby. Supports automatic management of C structs as ruby objects that:
* have accessible, type-safe attributes
* can be serialized via Marshal and YAML
* are GC-aware
* are fully inheritable and extensible with new attributes.
Who needs it?
If you're starting a C extension from scratch, or if you need to dynamically generate and load C code on the fly, you may be interested. For wrapping an existing library, you should consider SWIG as well. SWIG has the advantage of being able to parse headers and generate something as a starting point. CGenerator has the advantage of automatically handling serialization and memory management, but it can handle only a limited (but extensible) range of C data types.
The most important change is that all shadow classes can now load and dump YAML strings (and they do so without generating any more C code--the dump/load code for attributes is generic enough to work with YAML as well as Marshal).
- Fixed to work with the YAML changes in ruby 1.8.4.
- InitAccumulators were writing code to execute every time, rather
than just the first time. Fixed the bug.
- #declare_struct may be passed attributes, such as
- Fixed a bug caused by having more than one ruby interpreter installed.
- MSVC compatibility fixes.