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

32 lines
1 KiB
C
Raw Normal View History

// -*- mode: c++ -*-
2015-04-04 18:23:23 +00:00
#ifndef RR_FUNCTION
#define RR_FUNCTION
namespace rr {
class Function : public Ref<v8::Function> {
public:
static void Init();
static VALUE New(int argc, VALUE argv[], VALUE self);
2015-04-04 18:23:23 +00:00
static VALUE NewInstance(int argc, VALUE argv[], VALUE self);
static VALUE Call(VALUE self, VALUE receiver, VALUE arguments);
2015-04-04 18:23:23 +00:00
static VALUE SetName(VALUE self, VALUE name);
static VALUE GetName(VALUE self);
static VALUE GetInferredName(VALUE self);
static VALUE GetDisplayName(VALUE self);
2015-04-04 18:23:23 +00:00
static VALUE GetScriptLineNumber(VALUE self);
static VALUE GetScriptColumnNumber(VALUE self);
static VALUE IsBuiltin(VALUE self);
static VALUE ScriptId(VALUE self);
static VALUE GetBoundFunction(VALUE self);
2015-04-04 18:23:23 +00:00
static VALUE GetScriptOrigin(VALUE self);
inline Function(VALUE value) : Ref<v8::Function>(value) {}
inline Function(v8::Isolate* isolate, v8::Handle<v8::Function> function) : Ref<v8::Function>(isolate, function) {}
2015-07-18 20:00:32 -05:00
typedef MaybeLocal<Function, v8::Function> Maybe;
2015-04-04 18:23:23 +00:00
};
}
#endif