view nodejs/mbfly_njs.h @ 559:ef078d7c57b4 Android_Skia

Use internal field to store njs_runtime_t object. Instead of using named property to keep reference of njs_runtime_t object, the internal field of v8 object is used.
author Thinker K.F. Li <thinker@branda.to>
date Mon, 07 Jun 2010 11:42:45 +0800
parents
children a3c13c2a4792
line wrap: on
line source

#ifndef __MBFLY_NJS_H_
#define __MBFLY_NJS_H_

#include <v8.h>
extern "C" {
#include <mb.h>
}

#define THROW(x)						\
    do {							\
	v8::Handle<v8::Value> exc;				\
	exc = v8::Exception::Error(v8::String::New(x));		\
	return v8::ThrowException(exc);				\
    } while(0)
#define UNWRAP(o) v8::External::Unwrap((o)->GetInternalField(0))
#define WRAP(o, v) (o)->SetInternalField(0, v8::External::Wrap(v))
#define SET(o, n, v) (o)->Set(v8::String::New(n), v)
#define GET(o, n) (o)->Get(v8::String::New(n))

redraw_man_t *xnjsmb_rt_rdman(v8::Handle<v8::Object> mbrt);

#endif /* __MBFLY_NJS_H_ */