Posted on January 21st, 2004 by pka
This class embeds the Ruby interpreter in a C++ application
Introduction
This class embeds the Ruby interpreter in a C++ application.
Usage examples
RubyEval& ruby = *RubyEval::instance();
ruby.eval("puts 'hello ruby'");
assert( NUM2INT( ruby.eval("1+1") ) == 2 );
assert(RubyEval::val2str(ruby.eval("'Regexp'.gsub(/x/, 'X')")) == "RegeXp");
Download
Class documentation
Public Methods |
|
| ~RubyEval () | |
| void | run_file (const char *filename, ostream &out=cout) |
Run Ruby interpreter with filename. |
|
| VALUE | eval (const char *code) |
| Evaluate code string. |
|
| VALUE | eval (const char *code, ostream &errout) |
| Evaluate code string and print errors. |
|
| bool | evalOk () |
| Last evaluation was successful. |
|
Static Public Methods |
|
| RubyEval * | instance () |
| Singleton Instance. |
|
| string | val2str (const VALUE rval) |
| Convert Ruby value to string. |
|
| string | strval2str (const VALUE rval) |
| Convert Ruby string value to string. |
|
| void | exception_print (ostream &errout=cerr) |
| Get Ruby error/exception info an print it. |
|
| string | exception_info () |
| Get Ruby error/exception info as string. |
|
Links
-
Ruby
-
Extending Ruby from Programming Ruby - The Pragmatic Programmer's Guide
-
ruby embedded into c++ [tutorial, Guide, Howto]
-
SWIG - Wrapper interface generator
-
Ruby Plugin for Kate (unmaintained)

Services
Sources
About us