imag/imag-ruby
Matthias Beyer 238385a87f Allow unused variables here
As the methods!() macro seems to introduce an unused variable "itself"
for rustc 1.13 ... not sure whether this is valid or not.
2017-01-21 13:56:05 +01:00
..
src Allow unused variables here 2017-01-21 13:56:05 +01:00
Cargo.toml Add StoreId interfacing code 2017-01-21 13:56:05 +01:00
README.md Add readme file for imag-ruby 2017-01-21 13:56:05 +01:00

imag-ruby

A Ruby gem for scripting imag modules.

This crate contains both the Rust bindings for imag using ruru and a bunch of wrapper code for the actual imag gem.

Why another layer of indirection?

As "ruru" does not yet support modules, which is sad btw, we would end up with functions for all the things.

E.G.: imag_runtime_setup() instead of IMAG::Runtime::setup()

I want to add a Ruby gem to wrap these things. So basically a piece of ruby which uses imag.rb (the Rust gem) to build imag as a gem which then exports a fine module system.

Ideas for module system:

IMAG (Module)
  Runtime (Module)
    Runtime (Class)
  Store (Module)
    Store (Class)
    Entry (Class)
    StoreId (Class)
  Util (Module, Ruby-only I guess)

I would name the types the same as in the Rust codebase, to avoid confusion. Only exception would be the Entry class, which would be a FileLockEntry underneath and if we adapt libimagentrytag and the other libimagentry* libraries, we would extend this type.