NAME¶
spidermonkey.h -
SYNOPSIS¶
#include <Inventor/C/basic.h>
Macros¶
#define
JS_DLL_CALLBACK /* FIXME: set up this define properly. 20050601
mortene. */
#define
JSVAL_OBJECT 0x0
#define
JSVAL_INT 0x1
#define
JSVAL_DOUBLE 0x2
#define
JSVAL_STRING 0x4
#define
JSVAL_BOOLEAN 0x6
#define
JS_BIT(n) ((uint32_t)1 << (n))
#define
JS_BITMASK(n) (JS_BIT(n) - 1)
#define
JSVAL_TAGBITS 3
#define
JSVAL_TAGMASK JS_BITMASK(JSVAL_TAGBITS)
#define
JSVAL_TAG(v) ((v) & JSVAL_TAGMASK)
#define
JSVAL_SETTAG(v, t) ((v) | (t))
#define
JSVAL_CLRTAG(v) ((v) & ~(jsval)JSVAL_TAGMASK)
#define
JSVAL_IS_PRIMITIVE(v) (!JSVAL_IS_OBJECT(v) || JSVAL_IS_NULL(v))
#define
JSVAL_IS_OBJECT(v) (JSVAL_TAG(v) == JSVAL_OBJECT)
#define
JSVAL_IS_NUMBER(v) (JSVAL_IS_INT(v) || JSVAL_IS_DOUBLE(v))
#define
JSVAL_IS_INT(v) (((v) & JSVAL_INT) && (v) !=
JSVAL_VOID)
#define
JSVAL_IS_DOUBLE(v) (JSVAL_TAG(v) == JSVAL_DOUBLE)
#define
JSVAL_IS_STRING(v) (JSVAL_TAG(v) == JSVAL_STRING)
#define
JSVAL_IS_BOOLEAN(v) (JSVAL_TAG(v) == JSVAL_BOOLEAN)
#define
JSVAL_IS_NULL(v) ((v) == JSVAL_NULL)
#define
JSVAL_IS_VOID(v) ((v) == JSVAL_VOID)
#define
BOOLEAN_TO_JSVAL(b) JSVAL_SETTAG((jsval)(b) <<
JSVAL_TAGBITS, JSVAL_BOOLEAN)
#define
JSVAL_TO_BOOLEAN(v) ((JSBool)((v) >> JSVAL_TAGBITS))
#define
JSVAL_INT_BITS 31
#define
JSVAL_INT_POW2(n) ((jsval)1 << (n))
#define
JSVAL_INT_MIN ((jsval)1 - JSVAL_INT_POW2(30))
#define
JSVAL_INT_MAX (JSVAL_INT_POW2(30) - 1)
#define
INT_FITS_IN_JSVAL(i) ((uint32_t)((i)+JSVAL_INT_MAX) <=
2*JSVAL_INT_MAX)
#define
JSVAL_TO_INT(v) ((int32_t)(v) >> 1)
#define
INT_TO_JSVAL(i) (((jsval)(i) << 1) | JSVAL_INT)
#define
JSVAL_TO_GCTHING(v) ((void *)JSVAL_CLRTAG(v))
#define
JSVAL_TO_OBJECT(v) ((JSObject *)JSVAL_TO_GCTHING(v))
#define
JSVAL_TO_DOUBLE(v) ((double *)JSVAL_TO_GCTHING(v))
#define
JSVAL_TO_STRING(v) ((JSString *)JSVAL_TO_GCTHING(v))
#define
OBJECT_TO_JSVAL(obj) ((jsval)(obj))
#define
DOUBLE_TO_JSVAL(dp) JSVAL_SETTAG((jsval)(dp), JSVAL_DOUBLE)
#define
STRING_TO_JSVAL(str) JSVAL_SETTAG((jsval)(str), JSVAL_STRING)
#define
JSVAL_TO_PRIVATE(v) ((void *)((v) & ~JSVAL_INT))
#define
PRIVATE_TO_JSVAL(p) ((jsval)(p) | JSVAL_INT)
#define
JSPROP_ENUMERATE 0x01
#define
JSPROP_READONLY 0x02
#define
JSPROP_PERMANENT 0x04
#define
JSPROP_EXPORTED 0x08
#define
JSPROP_GETTER 0x10
#define
JSPROP_SETTER 0x20
#define
JSPROP_SHARED 0x40
#define
JSPROP_INDEX 0x80
#define
JS_FALSE (int)0
#define
JS_TRUE (int)1
#define
JSVAL_VOID INT_TO_JSVAL(0 - JSVAL_INT_POW2(30))
#define
JSVAL_NULL OBJECT_TO_JSVAL(0)
#define
JSVAL_ZERO INT_TO_JSVAL(0)
#define
JSVAL_ONE INT_TO_JSVAL(1)
#define
JSVAL_FALSE BOOLEAN_TO_JSVAL(JS_FALSE)
#define
JSVAL_TRUE BOOLEAN_TO_JSVAL(JS_TRUE)
#define
JSCLASS_HAS_PRIVATE (1<<0)
#define
JSCLASS_NEW_ENUMERATE (1<<1)
#define
JSCLASS_NEW_RESOLVE (1<<2)
#define
JSCLASS_PRIVATE_IS_NSISUPPORTS (1<<3)
#define
JSCLASS_SHARE_ALL_PROPERTIES (1<<4)
#define
JSCLASS_NEW_RESOLVE_GETS_START (1<<5)
#define
JSFUN_BOUND_METHOD 0x40
#define
JSOPTION_STRICT JS_BIT(0)
#define
JSOPTION_WERROR JS_BIT(1)
#define
JSOPTION_VAROBJFIX JS_BIT(2)
#define
JSOPTION_PRIVATE_IS_NSISUPPORTS JS_BIT(3)
#define
JSOPTION_COMPILE_N_GO JS_BIT(4)
Typedefs¶
typedef int
JSBool
typedef long
jsword
typedef jsword
jsval
typedef jsword
jsid
typedef int
intN
typedef unsigned int
uintN
typedef uint16_t
jschar
typedef int32_t
jsrefcount
typedef uint8_t
jsbytecode
typedef uint32_t
JSHashNumber
typedef uint32_t
jsatomid
typedef enum JSType
JSType
typedef enum JSAccessMode
JSAccessMode
typedef enum JSGCStatus
JSGCStatus
typedef void
JSRuntime
typedef void
JSContext
typedef void
JSObject
typedef void
JSObjectOps
typedef void
JSXDRState
typedef void
JSString
typedef struct JSClass
JSClass
typedef struct JSPropertySpec
JSPropertySpec
typedef int
JSVersion
typedef void
JSFunction
typedef struct JSFunctionSpec
JSFunctionSpec
typedef struct JSErrorReport
JSErrorReport
typedef void
JSScript
typedef JSBool(*
JSPropertyOp )(JSContext *, JSObject *, jsval, jsval *)
typedef JSBool(*
JSEnumerateOp )(JSContext *, JSObject *)
typedef JSBool(*
JSResolveOp )(JSContext *, JSObject *, jsval)
typedef JSBool(*
JSConvertOp )(JSContext *, JSObject *, JSType, jsval *)
typedef void(*
JSFinalizeOp )(JSContext *, JSObject *)
typedef JSObjectOps *(*
JSGetObjectOps )(JSContext *, JSClass *)
typedef JSBool(*
JSCheckAccessOp )(JSContext *, JSObject *, jsval,
JSAccessMode, jsval *)
typedef JSBool(*
JSNative )(JSContext *, JSObject *, uintN, jsval *,
jsval *)
typedef JSBool(*
JSXDRObjectOp )(JSXDRState *, JSObject **)
typedef JSBool(*
JSHasInstanceOp )(JSContext *, JSObject *, jsval, JSBool
*)
typedef uint32_t(*
JSMarkOp )(JSContext *, JSObject *, void *)
typedef void(*
JSErrorReporter )(JSContext *, const char *, JSErrorReport
*)
typedef JSBool(*
JSGCCallback )(JSContext *, JSGCStatus)
typedef JSBool(*
JS_EvaluateScript_t )(JSContext *, JSObject *, const
char *, uintN, const char *, uintN, jsval *)
typedef JSString *(*
JS_ValueToString_t )(JSContext *, jsval)
typedef char *(*
JS_GetStringBytes_t )(JSString *)
typedef JSBool(*
JS_SetProperty_t )(JSContext *, JSObject *, const char
*, jsval *)
typedef JSBool(*
JS_GetProperty_t )(JSContext *, JSObject *, const char
*, jsval *)
typedef JSBool(*
JS_CallFunctionName_t )(JSContext *, JSObject *, const
char *, uintN, jsval *, jsval *)
typedef JSBool(*
JS_CallFunctionValue_t )(JSContext *, JSObject *, jsval,
uintN, jsval *, jsval *)
typedef JSObject *(*
JS_ConstructObjectWithArguments_t )(JSContext *,
JSClass *, JSObject *, JSObject *, uintN, jsval *)
typedef JSRuntime *(*
JS_NewRuntime_t )(uint32_t)
typedef void(*
JS_DestroyRuntime_t )(JSRuntime *)
typedef JSContext *(*
JS_NewContext_t )(JSRuntime *, size_t)
typedef void(*
JS_DestroyContext_t )(JSContext *)
typedef void(*
JS_ShutDown_t )(void)
typedef JSObject *(*
JS_NewObject_t )(JSContext *, JSClass *, JSObject *,
JSObject *)
typedef JSBool(*
JS_InitStandardClasses_t )(JSContext *, JSObject *)
typedef JSErrorReporter(*
JS_SetErrorReporter_t )(JSContext *,
JSErrorReporter)
typedef JSBool(*
JS_PropertyStub_t )(JSContext *, JSObject *, jsval,
jsval *)
typedef JSBool(*
JS_EnumerateStub_t )(JSContext *, JSObject *)
typedef JSBool(*
JS_ResolveStub_t )(JSContext *, JSObject *, jsval)
typedef JSBool(*
JS_ConvertStub_t )(JSContext *, JSObject *, JSType,
jsval *)
typedef void(*
JS_FinalizeStub_t )(JSContext *, JSObject *)
typedef const char *(*
JS_GetImplementationVersion_t )(void)
typedef void *(*
JS_GetPrivate_t )(JSContext *, JSObject *)
typedef JSBool(*
JS_SetPrivate_t )(JSContext *, JSObject *, void *)
typedef JSFunction *(*
JS_NewFunction_t )(JSContext *, JSNative, uintN,
uintN flags, JSObject *, const char *)
typedef JSObject *(*
JS_GetFunctionObject_t )(JSFunction *)
typedef JSObject *(*
JS_DefineObject_t )(JSContext *, JSObject *, const
char *, JSClass *, JSObject *, uintN)
typedef JSBool(*
JS_DefineProperties_t )(JSContext *, JSObject *,
JSPropertySpec *)
typedef JSObject *(*
JS_GetParent_t )(JSContext *, JSObject *)
typedef JSBool(*
JS_SetParent_t )(JSContext *, JSObject *, JSObject *)
typedef JSBool(*
JS_DefineFunctions_t )(JSContext *, JSObject *,
JSFunctionSpec *)
typedef JSString *(*
JS_NewStringCopyZ_t )(JSContext *, const char *)
typedef JSType(*
JS_TypeOfValue_t )(JSContext *, jsval)
typedef const char *(*
JS_GetTypeName_t )(JSContext *, JSType)
typedef JSBool(*
JS_InstanceOf_t )(JSContext *, JSObject *, JSClass *,
jsval *)
typedef JSObject *(*
JS_InitClass_t )(JSContext *, JSObject *, JSObject
*, JSClass *, JSNative, uintN, JSPropertySpec *, JSFunctionSpec *,
JSPropertySpec *, JSFunctionSpec *)
typedef JSBool(*
JS_NewDoubleValue_t )(JSContext *, double, jsval *)
typedef void *(*
JS_GetContextPrivate_t )(JSContext *)
typedef void(*
JS_SetContextPrivate_t )(JSContext *, void *)
typedef JSBool(*
JS_ValueToBoolean_t )(JSContext *, jsval, JSBool *)
typedef JSBool(*
JS_ValueToNumber_t )(JSContext *, jsval, double *)
typedef JSObject *(*
JS_NewArrayObject_t )(JSContext *, int32_t, jsval *)
typedef JSBool(*
JS_GetArrayLength_t )(JSContext *, JSObject *, uint32_t
*)
typedef JSBool(*
JS_SetArrayLength_t )(JSContext *, JSObject *, uint32_t)
typedef JSBool(*
JS_HasArrayLength_t )(JSContext *, JSObject *, uint32_t
*)
typedef JSBool(*
JS_GetElement_t )(JSContext *, JSObject *, int32_t,
jsval *)
typedef JSBool(*
JS_SetElement_t )(JSContext *, JSObject *, int32_t,
jsval *)
typedef JSBool(*
JS_AddRoot_t )(JSContext *, void *)
typedef JSBool(*
JS_RemoveRoot_t )(JSContext *, void *)
typedef size_t(*
JS_GetStringLength_t )(JSString *)
typedef JSBool(*
JS_LookupProperty_t )(JSContext *, JSObject *, const
char *, jsval *)
typedef JSBool(*
JS_DefineProperty_t )(JSContext *, JSObject *, const
char *, jsval, JSPropertyOp, JSPropertyOp, uintN)
typedef JSScript *(*
JS_CompileFile_t )(JSContext *, JSObject *, const
char *)
typedef JSBool(*
JS_ValueToObject_t )(JSContext *, jsval, JSObject **)
typedef JSBool(*
JS_ExecuteScript_t )(JSContext *, JSObject *, JSScript
*, jsval *)
typedef JSBool(*
JS_IsExceptionPending_t )(JSContext *)
typedef JSBool(*
JS_GetPendingException_t )(JSContext *, jsval *)
typedef void(*
JS_SetPendingException_t )(JSContext *, jsval)
typedef void(*
JS_ClearPendingException_t )(JSContext *)
typedef double *(*
JS_NewDouble_t )(JSContext *, double)
typedef JSBool(*
JS_CallFunction_t )(JSContext *, JSObject *, JSFunction
*, uintN, jsval *, jsval *)
typedef JSFunction *(*
JS_ValueToFunction_t )(JSContext *, jsval)
typedef void(*
JS_ReportError_t )(JSContext *, const char *,...)
typedef JSBool(*
JS_IsArrayObject_t )(JSContext *, JSObject *)
typedef JSBool(*
JS_ObjectIsFunction_t )(JSContext *, JSObject *)
typedef JSBool(*
JS_ValueToECMAInt32_t )(JSContext *, jsval, int32_t *)
typedef JSFunction *(*
JS_DefineFunction_t )(JSContext *, JSObject *,
const char *, JSNative, uintN, uintN)
typedef JSObject *(*
JS_GetGlobalObject_t )(JSContext *)
typedef JSGCCallback(*
JS_SetGCCallback_t )(JSContext *, JSGCCallback)
typedef void(*
JS_GC_t )(JSContext *)
typedef void(*
JS_MaybeGC_t )(JSContext *)
typedef JSBool(*
JS_IsRunning_t )(JSContext *)
typedef JSBool(*
JS_DeleteProperty_t )(JSContext *, JSObject *, const
char *)
typedef JSScript *(*
JS_CompileScript_t )(JSContext *, JSObject *, const
char *, size_t, const char *, uintN)
typedef jsval(*
JS_GetNaNValue_t )(JSContext *)
typedef jsval(*
JS_GetNegativeInfinityValue_t )(JSContext *)
typedef jsval(*
JS_GetPositiveInfinityValue_t )(JSContext *)
typedef jsval(*
JS_GetEmptyStringValue_t )(JSContext *)
typedef JSBool(*
JS_SetPropertyAttributes_t )(JSContext *, JSObject *,
const char *, uintN, JSBool *)
typedef JSBool(*
JS_GetPropertyAttributes_t )(JSContext *, JSObject *,
const char *, uintN *, JSBool *)
typedef JSClass *(*
JS_GetClass_t )(JSObject *)
typedef JSObject *(*
JS_GetPrototype_t )(JSContext *, JSObject *)
typedef JSObject *(*
JS_SetPrototype_t )(JSContext *, JSObject *,
JSObject *)
typedef intN(*
JS_CompareStrings_t )(JSString *, JSString *)
typedef uint32_t(*
JS_GetOptions_t )(JSContext *)
typedef uint32_t(*
JS_SetOptions_t )(JSContext *, uint32_t)
typedef uint32_t(*
JS_ToggleOptions_t )(JSContext *, uint32_t)
typedef struct JSIdArray *(*
JS_Enumerate_t )(JSContext *, JSObject *)
typedef JSBool(*
JS_IdToValue_t )(JSContext *, jsid, jsval *)
typedef const char *(*
JS_GetFunctionName_t )(JSFunction *)
typedef JSObject *(*
JS_GetConstructor_t )(JSContext *, JSObject *)
typedef void(*
JS_DestroyIdArray_t )(JSContext *, struct JSIdArray *)
Enumerations¶
enum
JSType {
JSTYPE_VOID,
JSTYPE_OBJECT,
JSTYPE_FUNCTION,
JSTYPE_STRING,
JSTYPE_NUMBER,
JSTYPE_BOOLEAN,
JSTYPE_LIMIT }
enum
JSAccessMode {
JSACC_PROTO = 0,
JSACC_PARENT = 1,
JSACC_IMPORT = 2,
JSACC_WATCH = 3,
JSACC_READ = 4,
JSACC_WRITE = 8,
JSACC_LIMIT }
enum
JSGCStatus {
JSGC_BEGIN,
JSGC_END,
JSGC_MARK_END,
JSGC_FINALIZE_END }
Functions¶
const SpiderMonkey_t *
spidermonkey (void)
Detailed Description¶
Author¶
Generated automatically by Doxygen for Coin from the source code.