From 569f51fba268b984ffe2795bff5bb6fca6afbd78 Mon Sep 17 00:00:00 2001 From: Icemic Date: Thu, 23 May 2024 23:52:02 +0800 Subject: [PATCH] Add JS_GetLength --- quickjs.c | 4 ++++ quickjs.h | 1 + 2 files changed, 5 insertions(+) diff --git a/quickjs.c b/quickjs.c index 0355673..575cc97 100644 --- a/quickjs.c +++ b/quickjs.c @@ -6970,6 +6970,10 @@ static JSValue JS_GetPrototypeFree(JSContext *ctx, JSValue obj) return obj1; } +int JS_GetLength(JSContext *ctx, JSValue obj, int64_t *pres) { + return js_get_length64(ctx, pres, obj); +} + /* return TRUE, FALSE or (-1) in case of exception */ static int JS_OrdinaryIsInstanceOf(JSContext *ctx, JSValue val, JSValue obj) diff --git a/quickjs.h b/quickjs.h index dc653d7..01a987c 100644 --- a/quickjs.h +++ b/quickjs.h @@ -694,6 +694,7 @@ JS_EXTERN int JS_PreventExtensions(JSContext *ctx, JSValue obj); JS_EXTERN int JS_DeleteProperty(JSContext *ctx, JSValue obj, JSAtom prop, int flags); JS_EXTERN int JS_SetPrototype(JSContext *ctx, JSValue obj, JSValue proto_val); JS_EXTERN JSValue JS_GetPrototype(JSContext *ctx, JSValue val); +JS_EXTERN int JS_GetLength(JSContext *ctx, JSValue obj, int64_t *pres); #define JS_GPN_STRING_MASK (1 << 0) #define JS_GPN_SYMBOL_MASK (1 << 1)