LibJS: Add ModuleWithSpecifier for LoadedModules

This patch adds ModuleWithSpecifier as the record type to be used in
the LoadedModules field of Realm, Script and Cyclic Module Records.
This commit is contained in:
networkException 2023-10-28 23:45:38 +02:00 committed by Andreas Kling
parent 7c7ca7f230
commit d60e8c9df5
2 changed files with 8 additions and 0 deletions

View file

@ -222,6 +222,7 @@ enum class DeclarationKind;
struct AlreadyResolved;
struct JobCallback;
struct ModuleRequest;
struct ModuleWithSpecifier;
// Not included in JS_ENUMERATE_NATIVE_OBJECTS due to missing distinct prototype
class ProxyObject;

View file

@ -1,5 +1,6 @@
/*
* Copyright (c) 2021-2022, David Tuin <davidot@serenityos.org>
* Copyright (c) 2023, networkException <networkexception@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
@ -8,9 +9,15 @@
#include <AK/DeprecatedFlyString.h>
#include <AK/Vector.h>
#include <LibJS/Module.h>
namespace JS {
struct ModuleWithSpecifier {
DeprecatedString specifier; // [[Specifier]]
NonnullGCPtr<Module> module; // [[Module]]
};
// 2.9 ModuleRequest Records, https://tc39.es/proposal-import-assertions/#sec-modulerequest-record
struct ModuleRequest {
struct Assertion {