mirror of
https://github.com/bellard/quickjs.git
synced 2025-05-12 11:06:10 +08:00
added JS_GetAnyOpaque() (oleavr)
This commit is contained in:
parent
1eb05e44fa
commit
00e6f29b17
12
quickjs.c
12
quickjs.c
@ -10208,6 +10208,18 @@ void *JS_GetOpaque2(JSContext *ctx, JSValueConst obj, JSClassID class_id)
|
||||
return p;
|
||||
}
|
||||
|
||||
void *JS_GetAnyOpaque(JSValueConst obj, JSClassID *class_id)
|
||||
{
|
||||
JSObject *p;
|
||||
if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) {
|
||||
*class_id = 0;
|
||||
return NULL;
|
||||
}
|
||||
p = JS_VALUE_GET_OBJ(obj);
|
||||
*class_id = p->class_id;
|
||||
return p->u.opaque;
|
||||
}
|
||||
|
||||
static JSValue JS_ToPrimitiveFree(JSContext *ctx, JSValue val, int hint)
|
||||
{
|
||||
int i;
|
||||
|
@ -832,6 +832,7 @@ int JS_DefinePropertyGetSet(JSContext *ctx, JSValueConst this_obj,
|
||||
void JS_SetOpaque(JSValue obj, void *opaque);
|
||||
void *JS_GetOpaque(JSValueConst obj, JSClassID class_id);
|
||||
void *JS_GetOpaque2(JSContext *ctx, JSValueConst obj, JSClassID class_id);
|
||||
void *JS_GetAnyOpaque(JSValueConst obj, JSClassID *class_id);
|
||||
|
||||
/* 'buf' must be zero terminated i.e. buf[buf_len] = '\0'. */
|
||||
JSValue JS_ParseJSON(JSContext *ctx, const char *buf, size_t buf_len,
|
||||
|
Loading…
x
Reference in New Issue
Block a user