38static JSBool
WormholeGetProperty(JSContext *context, JSObject *
this, jsid propID, jsval *value);
39static JSBool
WormholeSetProperty(JSContext *context, JSObject *
this, jsid propID, JSBool strict, jsval *value);
55 JSCLASS_NO_OPTIONAL_MEMBERS
104 if (outEntity == NULL)
return NO;
107 result = OOJSEntityGetEntity(context, wormholeObj, &entity);
108 if (!result)
return NO;
119@implementation WormholeEntity (OOJavaScriptExtensions)
121- (void)getJSClass:(JSClass **)outClass andPrototype:(JSObject **)outPrototype
143 if (!JSID_IS_INT(propID))
return YES;
151 if (entity ==
nil) { *value = JSVAL_VOID;
return YES; }
153 switch (JSID_TO_INT(propID))
156 return JS_NewNumberValue(context, [entity arrivalTime], value);
159 return JS_NewNumberValue(context, [entity destination], value);
162 return JS_NewNumberValue(context, [entity expiryTime], value);
165 return JS_NewNumberValue(context, [entity
origin], value);
179static JSBool
WormholeSetProperty(JSContext *context, JSObject *
this, jsid propID, JSBool strict, jsval *value)
181 if (!JSID_IS_INT(propID))
return YES;
188 if (entity ==
nil)
return YES;
190 switch (JSID_TO_INT(propID))
#define OOJS_PROFILE_EXIT
#define OOJS_NATIVE_ENTER(cx)
#define OOJS_PROFILE_ENTER
OOINLINE JSClass * JSEntityClass(void)
OOINLINE JSObject * JSEntityPrototype(void)
static JSBool WormholeSetProperty(JSContext *context, JSObject *this, jsid propID, JSBool strict, jsval *value)
void InitOOJSWormhole(JSContext *context, JSObject *global)
static JSPropertySpec sWormholeProperties[]
static JSBool WormholeGetProperty(JSContext *context, JSObject *this, jsid propID, jsval *value)
static JSObject * sWormholePrototype
static JSFunctionSpec sWormholeMethods[]
static JSClass sWormholeClass
static BOOL JSWormholeGetWormholeEntity(JSContext *context, JSObject *stationObj, WormholeEntity **outEntity)
void OOJSRegisterObjectConverter(JSClass *theClass, OOJSClassConverterCallback converter)
OOINLINE jsval OOJSValueFromNativeObject(JSContext *context, id object)
void OOJSObjectWrapperFinalize(JSContext *context, JSObject *this)
void OOJSReportBadPropertySelector(JSContext *context, JSObject *thisObj, jsid propID, JSPropertySpec *propertySpec)
JSBool OOJSUnconstructableConstruct(JSContext *context, uintN argc, jsval *vp)
void OOJSRegisterSubclass(JSClass *subclass, JSClass *superclass)
void OOJSReportBadPropertyValue(JSContext *context, JSObject *thisObj, jsid propID, JSPropertySpec *propertySpec, jsval value)
id OOJSBasicPrivateObjectConverter(JSContext *context, JSObject *object)
#define OOJS_PROP_READONLY_CB
BOOL isVisibleToScripts()
NSString * oo_jsClassName()