Sha256: d49becf68caaf034832c3cdbc1bbe10760401472b64dc626817af8bf33c71412

Contents?: true

Size: 627 Bytes

Versions: 37

Compression:

Stored size: 627 Bytes

Contents

#include "rr.h"

namespace rr {

void Array::Init() {
  ClassBuilder("Array", Object::Class).
    defineSingletonMethod("New", &New).
    defineMethod("Length", &Length).
    defineMethod("CloneElementAt", &CloneElementAt).
    store(&Class);
}

VALUE Array::New(int argc, VALUE argv[], VALUE self) {
  VALUE length; rb_scan_args(argc, argv, "01", &length);
  return Array(v8::Array::New(RTEST(length) ? NUM2INT(length) : 0));
}

VALUE Array::Length(VALUE self) {
  return UInt32(Array(self)->Length());
}

VALUE Array::CloneElementAt(VALUE self, VALUE index) {
  return Object(Array(self)->CloneElementAt(UInt32(index)));
}

}

Version data entries

37 entries across 37 versions & 8 rubygems

Version Path
therubyracer-0.11.0beta8-x86-linux ext/v8/array.cc
therubyracer-0.11.0beta8 ext/v8/array.cc
therubyracer-0.11.0beta7-x86_64-linux ext/v8/array.cc
therubyracer-0.11.0beta7-x86-linux ext/v8/array.cc
therubyracer-0.11.0beta7-x86_64-darwin-10 ext/v8/array.cc
therubyracer-0.11.0beta7 ext/v8/array.cc
therubyracer-0.11.0beta6-x86-linux ext/v8/array.cc
therubyracer-0.11.0beta6-x86_64-linux ext/v8/array.cc
therubyracer-0.11.0beta6 ext/v8/array.cc
therubyracer-0.11.0beta5-x86-linux ext/v8/array.cc
therubyracer-0.11.0beta5 ext/v8/array.cc
therubyracer-0.11.0beta5-x86_64-linux ext/v8/array.cc
therubyracer-0.11.0beta4 ext/v8/array.cc
therubyracer-0.11.0beta3 ext/v8/array.cc
therubyracer-0.11.0beta2-x86_64-linux ext/v8/array.cc
therubyracer-0.11.0beta2 ext/v8/array.cc
therubyracer-0.11.0beta1 ext/v8/array.cc