mirror of
https://github.com/bellard/quickjs.git
synced 2025-09-30 15:04:24 +03:00
added JSON modules and import attributes
This commit is contained in:
20
quickjs.h
20
quickjs.h
@@ -936,12 +936,25 @@ typedef char *JSModuleNormalizeFunc(JSContext *ctx,
|
||||
const char *module_name, void *opaque);
|
||||
typedef JSModuleDef *JSModuleLoaderFunc(JSContext *ctx,
|
||||
const char *module_name, void *opaque);
|
||||
|
||||
typedef JSModuleDef *JSModuleLoaderFunc2(JSContext *ctx,
|
||||
const char *module_name, void *opaque,
|
||||
JSValueConst attributes);
|
||||
/* return -1 if exception, 0 if OK */
|
||||
typedef int JSModuleCheckSupportedImportAttributes(JSContext *ctx, void *opaque,
|
||||
JSValueConst attributes);
|
||||
|
||||
/* module_normalize = NULL is allowed and invokes the default module
|
||||
filename normalizer */
|
||||
void JS_SetModuleLoaderFunc(JSRuntime *rt,
|
||||
JSModuleNormalizeFunc *module_normalize,
|
||||
JSModuleLoaderFunc *module_loader, void *opaque);
|
||||
/* same as JS_SetModuleLoaderFunc but with attributes. if
|
||||
module_check_attrs = NULL, no attribute checking is done. */
|
||||
void JS_SetModuleLoaderFunc2(JSRuntime *rt,
|
||||
JSModuleNormalizeFunc *module_normalize,
|
||||
JSModuleLoaderFunc2 *module_loader,
|
||||
JSModuleCheckSupportedImportAttributes *module_check_attrs,
|
||||
void *opaque);
|
||||
/* return the import.meta object of a module */
|
||||
JSValue JS_GetImportMeta(JSContext *ctx, JSModuleDef *m);
|
||||
JSAtom JS_GetModuleName(JSContext *ctx, JSModuleDef *m);
|
||||
@@ -1119,7 +1132,10 @@ int JS_SetModuleExport(JSContext *ctx, JSModuleDef *m, const char *export_name,
|
||||
JSValue val);
|
||||
int JS_SetModuleExportList(JSContext *ctx, JSModuleDef *m,
|
||||
const JSCFunctionListEntry *tab, int len);
|
||||
|
||||
/* associate a JSValue to a C module */
|
||||
int JS_SetModulePrivateValue(JSContext *ctx, JSModuleDef *m, JSValue val);
|
||||
JSValue JS_GetModulePrivateValue(JSContext *ctx, JSModuleDef *m);
|
||||
|
||||
/* debug value output */
|
||||
|
||||
typedef struct {
|
||||
|
Reference in New Issue
Block a user