1
0
Fork 0
mirror of https://github.com/rubyjs/therubyracer synced 2023-03-27 23:21:42 -04:00
therubyracer/ext/v8/context.h
2015-04-04 18:23:23 +00:00

40 lines
1.3 KiB
C++

#ifndef RR_CONTEXT
#define RR_CONTEXT
namespace rr {
class Context : public Ref<v8::Context> {
public:
static void Init();
static VALUE New(int argc, VALUE argv[], VALUE self);
static VALUE Dispose(VALUE self);
static VALUE Enter(VALUE self);
static VALUE Exit(VALUE self);
static VALUE Global(VALUE self);
// TODO
// static VALUE DetachGlobal(VALUE self);
// static VALUE ReattachGlobal(VALUE self, VALUE global);
// static VALUE GetEntered(VALUE self);
// static VALUE GetCurrent(VALUE self);
// static VALUE GetCalling(VALUE self);
// static VALUE SetSecurityToken(VALUE self, VALUE token);
// static VALUE UseDefaultSecurityToken(VALUE self);
// static VALUE GetSecurityToken(VALUE self);
// static VALUE HasOutOfMemoryException(VALUE self);
// static VALUE InContext(VALUE self);
// static VALUE SetEmbedderData(VALUE self, VALUE index, VALUE data);
// static VALUE GetEmbedderData(VALUE self, VALUE index);
// static VALUE AllowCodeGenerationFromStrings(VALUE self, VALUE allow);
// static VALUE IsCodeGenerationFromStringsAllowed(VALUE self);
inline Context(VALUE value) : Ref<v8::Context>(value) {}
inline Context(v8::Handle<v8::Context> ctx) : Ref<v8::Context>(ctx->GetIsolate(), ctx) {}
};
}
#endif