Sha256: cd44259aca1aab34184dd59a0b8db4af3df502c83d36052cea95f8cff058153b

Contents?: true

Size: 971 Bytes

Versions: 2

Compression:

Stored size: 971 Bytes

Contents

#include "v8_main.h"

using namespace v8;

VALUE rb_mV8;

/* V8 singleton methods. */

/*
 * call-seq:
 *   V8.dead?  => value
 *
 * Returns <code>true</code> when V8 engine is down.
 *
 */
static VALUE rb_v8_dead_p(VALUE self)
{
  return V8::IsDead() ? Qtrue : Qfalse;
}

/*
 * call-seq:
 *   V8.alive?  => value
 *
 * Returns <code>true</code> wile V8 engine is running.
 *
 */
static VALUE rb_v8_alive_p(VALUE self)
{
  return V8::IsDead() ? Qfalse : Qtrue;
}

/*
 * call-seq:
 *   V8.dead?  => value
 *
 * Returns used version of V8 engine.
 *
 */
static VALUE rb_v8_version(VALUE self)
{
  return rb_str_new2(V8::GetVersion());
}


/* V8 module initializer. */
void Init_V8()
{
  rb_mV8 = rb_define_module("V8");
  rb_define_singleton_method(rb_mV8, "dead?", RUBY_METHOD_FUNC(rb_v8_dead_p), 0);
  rb_define_singleton_method(rb_mV8, "alive?", RUBY_METHOD_FUNC(rb_v8_alive_p), 0);
  rb_define_singleton_method(rb_mV8, "version", RUBY_METHOD_FUNC(rb_v8_version), 0);
}

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mustang-0.1.1 ext/v8/v8_main.cpp
mustang-0.1.0 ext/v8/v8_main.cpp