Bug 1877792 - Part 12: Add JS::IsCyclicModule r=spidermonkey-reviewers,jonco

Differential Revision: https://phabricator.services.mozilla.com/D218559
This commit is contained in:
Jonatan Klemets 2024-09-03 08:10:52 +00:00
Родитель 6cea6fad8b
Коммит 2b89618db7
2 изменённых файлов: 9 добавлений и 0 удалений

Просмотреть файл

@ -214,6 +214,11 @@ extern JS_PUBLIC_API void ClearModulePrivate(JSObject* module);
*/
extern JS_PUBLIC_API Value GetModulePrivate(JSObject* module);
/**
* Checks if the given module is a cyclic module.
*/
extern JS_PUBLIC_API bool IsCyclicModule(JSObject* module);
/*
* Perform the ModuleLink operation on the given source text module record.
*

Просмотреть файл

@ -214,6 +214,10 @@ JS_PUBLIC_API JS::Value JS::GetModulePrivate(JSObject* module) {
return module->as<ModuleObject>().scriptSourceObject()->getPrivate();
}
JS_PUBLIC_API bool JS::IsCyclicModule(JSObject* module) {
return module->as<ModuleObject>().hasCyclicModuleFields();
}
JS_PUBLIC_API bool JS::ModuleLink(JSContext* cx, Handle<JSObject*> moduleArg) {
AssertHeapIsIdle();
CHECK_THREAD(cx);