Module: RVM::Languages

Extended by:
PluginHost
Defined in:
lib/rvm/languages.rb,
lib/rvm/languages/ecma.rb,
lib/rvm/languages/math.rb,
lib/rvm/languages/brainfuck.rb,
lib/rvm/languages/math/tree.rb,
lib/rvm/languages/ecma/compiler.rb,
lib/rvm/languages/math/compiler.rb,
lib/rvm/languages/math/tokenizer.rb

Overview

This module is the basic language container, classes are supposed to be used by this as in: RVM::Language[<class id>] this guarnatees that, in the case of overwriting a standard compilers the code still works.

This are COMPILERS not INTERPRETERS they compile source code to a VM bytecode to be executed later

Have a look at RVM::Interpreter for details

Example

COMPILING A MATHEMATICAL EQUILATION

require 'lib/base/languages'
code = RVM::Classes[:math].compile '(1 + 1) * 3^2'

Defined Under Namespace

Classes: Brainfuck, ECMA, Language, Math

Constant Summary

Constants included from PluginHost

PluginHost::HostNotFound, PluginHost::PLUGIN_HOSTS, PluginHost::PLUGIN_HOSTS_BY_ID, PluginHost::PluginNotFound

Method Summary

Methods included from PluginHost

[], default, extended, has?, host_by_id, host_id, included, inspect, list, load_all, map, plugin_hash, plugin_path, register, require_helper