29#ifndef __LIBFREEWRL_SYSTEM_JS_H__
30#define __LIBFREEWRL_SYSTEM_JS_H__
40#define JS_HAS_FILE_OBJECT 1
42#if defined(IPHONE) || defined(_ANDROID) || defined(NO_JAVASCRIPT)
50typedef int JSFunctionSpec;
51typedef int JSPropertySpec;
54typedef int JSErrorReport;
61#ifdef MOZILLA_JS_UNSTABLE_INCLUDES
62# include "../unstable/jsapi.h"
63# include "../unstable/jsdbgapi.h"
70int JS_SetPrivateFw(JSContext *cx, JSObject* obj,
void *data);
71JSObject* JS_NewGlobalObjectFw(JSContext *cx, JSClass *clasp);
72void * JS_GetPrivateFw(JSContext *cx,JSObject*_obj);
73JSObject* JS_GetParentFw(JSContext *cx, JSObject *me);
74JSObject * JS_ConstructObjectWithArgumentsFw(JSContext *cx, JSClass *clasp, JSObject *parent,
unsigned argc, jsval *argv);
75JSObject * JS_ConstructObjectFw(JSContext *cx, JSClass *clasp,
void *whatever, JSObject *parent);
76JSObject * JS_GetPrototypeFw(JSContext *cx, JSObject * obj);
77JSClass * JS_GetClassFw(JSContext *cx, JSObject * obj);
79#define JSSCRIPT JSObject
81#define JSSCRIPT2 JSObject
91#define jsuint uint32_t
93#define jsdouble double
95#define JS_FinalizeStub NULL
96#define JSSCRIPT2 JSScript
97#define JS_GET_CLASS JS_GetClassFw
98JSBool JS_NewNumberValue(JSContext *cx, jsdouble d, jsval *rval);
99#define JSVAL_IS_OBJECT(retval) JSVAL_IS_OBJECT_OR_NULL_IMPL(retval)
103#define JSSCRIPT JSScript
104#define JSSCRIPT2 JSObject
108#define JS_GET_PROPERTY_STUB JS_PropertyStub
111#define JS_SET_PROPERTY_STUB1 js_SetPropertyDebug1
115# define JS_SET_PROPERTY_STUB2 JS_PropertyStub
117# define JS_SET_PROPERTY_STUB2 JS_StrictPropertyStub
120#define JS_SET_PROPERTY_STUB3 js_SetPropertyDebug3
121#define JS_SET_PROPERTY_STUB4 js_SetPropertyDebug4
122#define JS_SET_PROPERTY_STUB5 js_SetPropertyDebug5
123#define JS_SET_PROPERTY_STUB6 js_SetPropertyDebug6
124#define JS_SET_PROPERTY_STUB7 js_SetPropertyDebug7
125#define JS_SET_PROPERTY_STUB8 js_SetPropertyDebug8
126#define JS_SET_PROPERTY_CHECK js_SetPropertyCheck