commit 56e67b308e0522fa98927eaf003f99343b107ec3
parent df8a7eef31456a4fedd5bc8b40b414a99c9d84c8
Author: Fabrice Bellard <fabrice@bellard.org>
Date: Sat, 27 Jan 2024 13:27:32 +0100
export JS_GetModuleNamespace (github issue #34)
Diffstat:
2 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/quickjs/quickjs.c b/quickjs/quickjs.c
@@ -27979,13 +27979,11 @@ static int exported_names_cmp(const void *p1, const void *p2, void *opaque)
return ret;
}
-static JSValue js_get_module_ns(JSContext *ctx, JSModuleDef *m);
-
static JSValue js_module_ns_autoinit(JSContext *ctx, JSObject *p, JSAtom atom,
void *opaque)
{
JSModuleDef *m = opaque;
- return js_get_module_ns(ctx, m);
+ return JS_GetModuleNamespace(ctx, m);
}
static JSValue js_build_module_ns(JSContext *ctx, JSModuleDef *m)
@@ -28091,7 +28089,7 @@ static JSValue js_build_module_ns(JSContext *ctx, JSModuleDef *m)
return JS_EXCEPTION;
}
-static JSValue js_get_module_ns(JSContext *ctx, JSModuleDef *m)
+JSValue JS_GetModuleNamespace(JSContext *ctx, JSModuleDef *m)
{
if (JS_IsUndefined(m->module_ns)) {
JSValue val;
@@ -28352,7 +28350,7 @@ static int js_inner_module_linking(JSContext *ctx, JSModuleDef *m,
if (mi->import_name == JS_ATOM__star_) {
JSValue val;
/* name space import */
- val = js_get_module_ns(ctx, m1);
+ val = JS_GetModuleNamespace(ctx, m1);
if (JS_IsException(val))
goto fail;
set_value(ctx, &var_refs[mi->var_idx]->value, val);
@@ -28376,7 +28374,7 @@ static int js_inner_module_linking(JSContext *ctx, JSModuleDef *m,
JSModuleDef *m2;
/* name space import from */
m2 = res_m->req_module_entries[res_me->u.req_module_idx].module;
- val = js_get_module_ns(ctx, m2);
+ val = JS_GetModuleNamespace(ctx, m2);
if (JS_IsException(val))
goto fail;
var_ref = js_create_module_var(ctx, TRUE);
@@ -28584,7 +28582,7 @@ static JSValue js_load_module_fulfilled(JSContext *ctx, JSValueConst this_val,
JSValue ret, ns;
/* return the module namespace */
- ns = js_get_module_ns(ctx, m);
+ ns = JS_GetModuleNamespace(ctx, m);
if (JS_IsException(ns)) {
JSValue err = JS_GetException(ctx);
js_load_module_rejected(ctx, JS_UNDEFINED, 1, (JSValueConst *)&err, 0, func_data);
diff --git a/quickjs/quickjs.h b/quickjs/quickjs.h
@@ -882,6 +882,7 @@ void JS_SetModuleLoaderFunc(JSRuntime *rt,
/* return the import.meta object of a module */
JSValue JS_GetImportMeta(JSContext *ctx, JSModuleDef *m);
JSAtom JS_GetModuleName(JSContext *ctx, JSModuleDef *m);
+JSValue JS_GetModuleNamespace(JSContext *ctx, JSModuleDef *m);
/* JS Job support */