module RType::R
Public Class Methods
init_rsruby()
click to toggle source
# File lib/r_type/r.rb, line 36 def init_rsruby RSRuby.set_default_mode RSRuby::PROC_CONVERSION converter = RType::Convert.new @rsruby = RSRuby.instance @rsruby.proc_table[->(x){ true }] = ->(x) { converter.convert x } @rsruby end
lazy_expression(r_exp)
click to toggle source
# File lib/r_type/r.rb, line 27 def lazy_expression r_exp rsruby.eval_R "quote(#{r_exp})" end
Also aliased as: `
method_missing(name, *args, &block)
click to toggle source
# File lib/r_type/r.rb, line 4 def method_missing name, *args, &block if name =~ /^(.*)=$/ rsruby[:assign].call $1.to_s, args.first elsif rsruby.respond_to? name rsruby.send name, *args else obj = rsruby[name] if obj.is_a?(::RType::Function) obj.call *args else obj end end end
print(*args)
click to toggle source
# File lib/r_type/r.rb, line 23 def print *args rsruby[:print].call *args end
rsruby()
click to toggle source
# File lib/r_type/r.rb, line 32 def rsruby @rsruby ||= init_rsruby end
run(&block)
click to toggle source
# File lib/r_type/r.rb, line 19 def run &block instance_eval &block end
Private Class Methods
reset()
click to toggle source
# File lib/r_type/r.rb, line 45 def reset @rsruby = nil end