Class: Renjin::RubySexp
Direct Known Subclasses
Instance Attribute Summary
Attributes included from RBSexp
Class Method Summary collapse
-
.build(sexp) ⇒ Object
—————————————————————————————-.
Instance Method Summary collapse
-
#fassign(function, value) ⇒ Object
—————————————————————————————-.
-
#initialize(sexp) ⇒ RubySexp
constructor
—————————————————————————————-.
-
#to_string ⇒ Object
—————————————————————————————-.
Methods included from RBSexp
#destroy, #ncol, #nrow, #pp, #print, #r, #rclass, #sexp?, #typeof, #unbind
Constructor Details
#initialize(sexp) ⇒ RubySexp
278 279 280 281 282 283 284 |
# File 'lib/JRubyR/rbsexp.rb', line 278 def initialize(sexp) @sexp = sexp @rvar = nil @attr = Attributes.new(self) end |
Class Method Details
.build(sexp) ⇒ Object
306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 |
# File 'lib/JRubyR/rbsexp.rb', line 306 def self.build(sexp) if (sexp.instance_of? Java::OrgRenjinPrimitivesSequence::IntSequence) res = Renjin::Sequence.new(sexp) elsif (sexp.instance_of? Java::OrgRenjinSexp::Null) res = nil elsif (sexp.instance_of? Java::OrgRenjinSexp::ListVector) res = Renjin::List.new(sexp) elsif (sexp.instance_of? Java::OrgRenjinSexp::LogicalArrayVector) res = Renjin::Logical.new(sexp) elsif (sexp.instance_of? Java::OrgRenjinSexp::Environment) res = Renjin::Environment.new(sexp) elsif (sexp.is_a? Java::OrgRenjinSexp::ComplexVector) res = Renjin::ComplexVector.new(sexp) elsif (sexp.is_a? Java::OrgRenjinSexp::Vector) res = Renjin::Vector.new(sexp) elsif (sexp.is_a? Java::OrgRenjinSexp::Closure) res = Renjin::Closure.new(sexp) # elsif (sexp.is_a? Java::OrgRenjinPrimitives::R$primitive$sum) # res = Renjin::Primitive.new(sexp) else p "sexp type needs to be specialized" p sexp res = Renjin::RubySexp.new(sexp) end return res end |
Instance Method Details
#fassign(function, value) ⇒ Object
298 299 300 |
# File 'lib/JRubyR/rbsexp.rb', line 298 def fassign(function, value) R.fassign(self, function, value) end |
#to_string ⇒ Object
290 291 292 |
# File 'lib/JRubyR/rbsexp.rb', line 290 def to_string R.eval("toString(#{r})") end |