1 = Ruby-EET -- Ruby bindings for EET
3 Ruby-EET allows you to read and write EET[http://enlightenment.org] files
5 Support for Ruby object serialization to EDD (EET Data Descriptor) format
8 Ruby-EET is maintained by:
14 Ruby-EET is available under an MIT-style license.
20 The latest version of Ruby-EET can be found at
21 http://code-monkey.de/pages/ruby-eet
23 Online documentation is available at
24 http://docs.code-monkey.de/ruby-eet
28 Ruby-EET depends on Rake[http://rake.rubyforge.org] 0.5.0 or greater
29 and EET[http://www.enlightenment.org].
33 Run "rake install" to install Ruby-EET.
39 Each entry in an EET file consists of an unique key and the data that's
40 associated with that key.
42 First, you have to open an EET file by calling Eet::File.open.
44 Now, you can store arbitrary data in the EET file with Eet::File#write.
45 To read the data from the EET file, use Eet::File#read.
47 If you want to store/retrieve image data, see Eet::File#read_image and
48 Eet::File#write_image.
50 === Serializing objects
52 Ruby-EET also supports the serialization of objects which uses the same
53 format as the C API uses for its EET data descriptors.
54 At the time of this writing, deserialization, i.e. read support, isn't
55 implemented yet, though.
66 Now, Foo.new.to_eet will serialize the object into EET format.
67 All of the objects instance variables will be serialized, and the class
68 name will be used as the tag.
70 To override the tag, you just need to implement Foo#to_eet_name:
78 To control what information is stored for an object, override the method
81 to_eet_properties returns a hash containing keys that are the names of
82 the stored properties. Each hash value is an array that contains the
83 value to store at least. Optionally, it can also contain a type specifier
84 to enforce specific encoding.
88 For fixnums and bignums, the valid type specifiers are :char, :short,
89 :long_long which enforce encoding as 1 byte, 2 byte or 8 byte value
90 respectively. The default is to encode the value as a 4 byte value.
92 For floats, the valid type specifier is :double, which enforces encoding
93 as an 8 byte value. The default is to encode the value as a 4 byte value.